天天看点

[鸿蒙]条件渲染

if 条件渲染不会在虚拟 DOM 中构建,也不会渲染到真实 DOM 中;show 虽然不会显示在页面中,但是会在虚拟 DOM 中构建,也会渲染到真实 DOM 中。

在有些情况下,我们需要根据实际的业务来控制标签是否渲染到真实 DOM 中。因此,条件渲染就派上用场了,它分为<code>if...elif/else</code>和<code>show</code>两种。

show 允许标签渲染到真实 DOM 中,只是利用了 CSS 样式 <code>display: none;</code> 来控制是否显示;

如果 if 的条件满足,就把标签渲染到真实 DOM 中。

在编辑器左上方的工具栏,找到 View -&gt; Tool Windows,点击 Previewer。

在 Previewer 的上方有一个图标

[鸿蒙]条件渲染

[鸿蒙]条件渲染

点击它之后可以显示一个工具面板 inspector,它的作用与浏览器 F12 差不多,可以直接了解 DOM 渲染的情况。

[鸿蒙]条件渲染

如下图,elif 条件<code>flag == 'bar'</code>,所以只将第二个 text 标签渲染到真实 DOM 中。

[鸿蒙]条件渲染

如下图,show 把所有的标签都渲染到真实 DOM 中了,其余没有显示的标签只是因为其样式为<code>display: none;</code>。

[鸿蒙]条件渲染
!注意:禁止在同一个标签上同时设置 for 和 if 属性。

继续阅读