【微信小程序】view和block标签的差别

<--!用在block中可以渲染一个包含多节点的结构块。比如:-->
<block wx:for="
{{[1, 2, 3]}}"> <view> {{index}}: </view> <view> {{item}} </view> </block>

用在view中只能应用单个节点。比如:

<view wx:for="{{array}}" wx:for-index="idx" wx:for-item="itemName">
  {{idx}}: {{itemName.message}}
</view>
<view wx:for="{{[1, 2, 3, 4, 5, 6, 7, 8, 9]}}" wx:for-item="i">
  <view wx:for="{{[1, 2, 3, 4, 5, 6, 7, 8, 9]}}" wx:for-item="j">
    <view wx:if="{{i <= j}}">
      {{i}} * {{j}} = {{i * j}}
    </view>
  </view>
</view>

==================================================================================

两者的区别是,<view> 是一个组件,会在页面上做渲染;<block>不是一个组件,它仅仅是一个包装元素,只接受控制属性,不会在页面中做任何渲染。下面是两个<block>使用的例子:

wx:if

<block wx:if="{{true}}">
    <view> text </view>
    <view> text </view>
</block>

wx:for

<block wx:for="{{[1, 2, 3]}}">
    <view> {{index}}: </view>
    <view> {{item}} </view>
</block>

wx:elif和wx:else

<block wx:if="{{boolean==true}}">
    <view class="bg_black"></view>
</block>
<block wx:elif="{{boolean==false}}">
    <view class="bg_red"></view>
</block>
<block wx:else>
    <view class="bg_red"></view>
</block>

 

posted @ 2019-02-19 10:22  傍风无意  阅读(3795)  评论(0编辑  收藏  举报