注冊

微信小程序條件渲染,用wx:if="{{condition}}"來判斷是否需要渲染該代碼塊

2020-09-27
導(dǎo)讀:wx:if 在框架中,我們用 wx:if={{condition}} 來判斷是否需要渲染該代碼塊: view wx:if = {{condition}} True / view 也可以用 wx:elif 和 wx:else 來添加一個else塊: view wx:if = {{length 5}} 1 / view view wx:elif...

wx:if

在框架中,我們用wx:if="{{condition}}"來判斷是否需要渲染該代碼塊:

微信小程序條件渲染,用wx:if="{{condition}}"來判斷是否需要渲染該代碼塊

<view wx:if="{{condition}}"> True </view>

也可以用wx:elifwx:else來添加一個else塊:

<view wx:if="{{length > 5}}"> 1 </view>
<view wx:elif="{{length > 2}}"> 2 </view>
<view wx:else> 3 </view>

block wx:if

因為wx:if是一個控制屬性,需要將它添加到一個標(biāo)簽上。但是如果我們想一次性判斷多個組件標(biāo)簽,我們可以使用一個<block/>標(biāo)簽將多個組件包裝起來,并在上邊使用wx:if控制屬性。

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

注意:<block/>并不是一個組件,它僅僅是一個包裝元素,不會在頁面中做任何渲染,只接受控制屬性。

wx:ifvshidden

因為wx:if之中的模板也可能包含數(shù)據(jù)綁定,所以當(dāng)wx:if的條件值切換時,框架有一個局部渲染的過程,因為它會確保條件塊在切換時銷毀或重新渲染。

同時wx:if也是惰性的,如果在初始渲染條件為false,框架什么也不做,在條件第一次變成真的時候才開始局部渲染。

相比之下,hidden就簡單的多,組件始終會被渲染,只是簡單的控制顯示與隱藏。

一般來說,wx:if有更高的切換消耗而hidden有更高的初始渲染消耗。因此,如果需要頻繁切換的情景下,用hidden更好,如果在運行時條件不大可能改變則wx:if較好。

更多微信小程序開發(fā)教程,可以關(guān)注hi小程序。
重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個小商店

第三部分:如何登錄小商店

第四部分:開店任務(wù)常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結(jié)算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)