有沒有了解性別和您的性取向之間的差異?
P粉562845941
2023-08-15 15:53:07
<p>在Inferno中,當嘗試在編譯時定義子元素形狀時,有兩種定義子元素為文字的方式:</p>
<pre class="brush:php;toolbar:false;">function Hello() {
let h = "Hello";
return (
<p $HasTextChildren>
{h}
</p>
);
}</pre>
<pre class="brush:php;toolbar:false;">import { createTextVNode } from "inferno";
function Hello() {
let h = "Hello";
return (
<p $HasVNodeChildren>
{createTextVNode(h)}
</p>
);
}</pre>
<p>這兩種方式有什麼不同? </p>
就最終結果而言,沒有差別。然而,性能方面,前者稍微快一點。但是限制是子元素必須只能是文字。可能有情況下你想要文字和其他內容作為子元素。在這種情況下,你可以使用
createTextVNode()
和適當的標誌之一,其中之一是$HasVNodeChildren
。你可以在文件中看到標誌的清單:https://www.infernojs.org/docs/guides/optimizations#作為額外的說明,如果編譯器在編譯時可以看到它,你不必自己定義子元素的形狀。所以,不需要這樣寫:
你可以簡單寫成: