有没有了解性别和您的性取向之间的区别?
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作为额外的说明,如果编译器在编译时可以看到它,你不必自己定义子元素的形状。所以,不需要这样写:
你可以简单地写成: