欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序wxml列表渲染原理解析

 更新時間:2019年11月27日 15:09:22   作者:冬冬他哥哥  
這篇文章主要介紹了微信小程序wxml列表渲染原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

這篇文章主要介紹了微信小程序wxml列表渲染原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

列表渲染存在的意義

以電商為例,我們希望渲染5個商品,而又希望容易改變,我們就要在wxml中動態(tài)添加。

<view>
  <block wx:for="{{products}}" wx:for-item="item" wx:key="index">
    <view>{{index+1}}:{{item.name}}</view>
  </block>
</view>
Page({
 data: {
  message: "hello world",
  products: [{
    name: "商品A"
   },
   {
    name: "商品B"
   },
   {
    name: "商品C"
   },
   {
    name: "商品D"
   },
   {
    name: "商品E"
   }
  ]
 }

})

上面在一個非顯示組件block中,我們渲染五個有內(nèi)容的view

wx:for是循環(huán)數(shù)組,wx:for-item即給列表賦別名

子循環(huán)

<view wx:for="{{parentList}}">
 {{item.id}}
 <view wx:for="{{item.childList}}" wx:for-item="items">
 {{items.name}}{{items.account}}
 </view>

wx:key用來穩(wěn)定渲染,作為渲染想的唯一標(biāo)識(主要有三種)

1、字符串

代表在 for 循環(huán)的 array 中 item 的某個 property,該 property 的值需要是列表中唯一的字符串或數(shù)字,且不能動態(tài)改變。

data: {
input_data: [
{ id: 1, unique: "unique1" },
{ id: 2, unique: "unique2" },
{ id: 3, unique: "unique3" },
{ id: 4, unique: "unique4" },
]
}
//test.wxml
<input value="id:{{item.id}}" wx:for="{{input_data}}" wx:key="unique" />

2、保留關(guān)鍵字 *this

代表在 for 循環(huán)中的 item 本身,這種表示需要 item 本身是一個唯一的字符串或者數(shù)字,如:
當(dāng)數(shù)據(jù)改變觸發(fā)渲染層重新渲染的時候,會校正帶有 key 的組件,框架會確保他們被重新排序,而不是重新創(chuàng)建,以確保使組件保持自身的狀態(tài),并且提高列表渲染時的效率。

data: {
numberArray: [1, 2, 3, 4],
stringArray:['aaa','ccc','fff','good']
}
//test.wxml
<input value="id:{{ item }}" wx:for="{{numberArray}}" wx:key="*this" />
<input value="id:{{ item }}" wx:for="{{stringArray}}" wx:key="*this" />
},

一般是指定一個唯一的字段(類似于id的定義);

3、通配符+名字

用wx:key和不用對比  

wk:key 組件識別 渲染情況 狀態(tài)情況 for效率
各組件可識別 渲染時僅改變組件順序 保持組件之前原來狀態(tài) 效率高
組件無法識別 渲染時重新創(chuàng)建各組件 重置組件的初始狀態(tài) 效率低

1.需要wx:key的情況

列表中項目的位置會動態(tài)改變或者有新的項目添加到列表中

希望列表中的項目保持自己的特征和狀態(tài)

(如 <input/> 中的輸入內(nèi)容,<switch/> 的選中狀態(tài))

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論