1.控制属性:
用于控制WXML结构的属性,控制包含两种方法:
——条件判断(用于布尔值真假的判断,以控制程序进入不同的逻辑分支);
——循环(只用户重复执行代码,直到循环条件的结束)。
——在微信中用wx:if
来控制模板分支的结构
——用wx:for
来控制模板循环的结构
这些属性必须放在开始的标签属性里面,并且数据变量需要用{{ }}
包括起来。
2.包装元素:
控制属性的使用规则决定了它必须基于组件而存在,那么对多层嵌套的使用场景时,这种规则会导致开发者引入很多没有必要的页面组件,比如一个3层嵌套的结构可能会因为for循环导致很多<view>
组件出来,但是这些组件对页面的展示并没有任何价值,反而会影响渲染的效率,为了解决这个问题,小程序为开发者提供了包装元素<block>
。
<block>
的特点是在页面中不会做任何的渲染,可以把控制属性放在<block>
中,对页面结构进行多层的控制,而不用担心页面在渲染的时候产生多余的组件。
例如:
<view wx:for="{{ array }}">
<view wx:if="{{ condition1 }}">
<view wx:if="{{ condition2 }}">
<text>Hello</text>
</view>
</view>
</view>
▼
<block wx:for="{{ array }}">
<block wx:if="{{ condition1 }}">
<block wx:if="{{ condition2 }}">
<text>Hello</text>
</block>
</block>
</block>
<block>
并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性。
网友评论