微信小程序 教程之條件渲染
系列文章:
微信小程序 教程之WXSS
微信小程序 教程之引用
微信小程序 教程之事件
微信小程序 教程之模板
微信小程序 教程之列表渲染
微信小程序 教程之條件渲染
微信小程序 教程之?dāng)?shù)據(jù)綁定
微信小程序 教程之WXML
wx:if
在MINA中,我們用wx:if="{{condition}}"來(lái)判斷是否需要渲染該代碼塊:
<view wx:if="{{condition}}"> True </view>
也可以用wx:elif和wx:else來(lái)添加一個(gè)else塊:
<view wx:if="{{length > 5}}"> 1 </view> <view wx:elif="{{length > 2}}"> 2 </view> <view wx:else> 3 </view>
block wx:if
因?yàn)閣x:if 是一個(gè)控制屬性,需要將它添加到一個(gè)標(biāo)簽上。但是如果我們想一次性判斷多個(gè)組件標(biāo)簽,我們可以使用一個(gè)<block/>標(biāo)簽將多個(gè)組件包裝起來(lái),并在上邊使用wx:if控制屬性。
<block wx:if="{{true}}"> <view> view1 </view> <view> view2 </view> </block>
注意: <block/>并不是一個(gè)組件,它僅僅是一個(gè)包裝元素,不會(huì)在頁(yè)面中做任何渲染,只接受控制屬性。
wx:if vs hidden
因?yàn)閣x:if之中的模板也可能包含數(shù)據(jù)綁定,所有當(dāng)wx:if的條件值切換時(shí),MINA有一個(gè)局部渲染的過(guò)程,因?yàn)樗鼤?huì)確保條件塊在切換時(shí)銷(xiāo)毀或重新渲染。
同時(shí)wx:if也是惰性的,如果在初始渲染條件為false,MINA什么也不做,在條件第一次變成真的時(shí)候才開(kāi)始局部渲染。
相比之下,hidden就簡(jiǎn)單的多,組件始終會(huì)被渲染,只是簡(jiǎn)單的控制顯示與隱藏。
一般來(lái)說(shuō),wx:if有更高的切換消耗而hidden有更高的初始渲染消耗。因此,如果需要頻繁切換的情景下,用hidden更好,如果在運(yùn)行時(shí)條件不大可能改變則wx:if較好。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
微信小程序遇到修改數(shù)據(jù)后頁(yè)面不渲染的問(wèn)題解決
這篇文章主要介紹了微信小程序遇到修改數(shù)據(jù)后頁(yè)面不渲染的問(wèn)題解決的相關(guān)資料,需要的朋友可以參考下2017-03-03JS實(shí)現(xiàn)一個(gè)微信錄音功能過(guò)程示例詳解
這篇文章主要介紹了JS實(shí)現(xiàn)一個(gè)微信錄音功能過(guò)程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02js前端設(shè)計(jì)模式優(yōu)化50%表單校驗(yàn)代碼示例
這篇文章主要為大家介紹了js前端設(shè)計(jì)模式優(yōu)化50%表單校驗(yàn)代碼示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06JS實(shí)現(xiàn)可恢復(fù)的文件上傳示例詳解
這篇文章主要為大家介紹了JS實(shí)現(xiàn)可恢復(fù)的文件上傳示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12微信小程序?qū)崿F(xiàn)錨點(diǎn)定位樓層跳躍的實(shí)例
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)錨點(diǎn)定位樓層跳躍的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05微信小程序中使用Promise進(jìn)行異步流程處理的實(shí)例詳解
這篇文章主要介紹了微信小程序中使用Promise進(jìn)行異步流程處理的實(shí)例詳解的相關(guān)資料,這里詳細(xì)說(shuō)明該如何使用Promise 來(lái)進(jìn)行異步流程的處理,提供具體實(shí)現(xiàn)步驟,需要的朋友可以參考下2017-08-08