亚洲激情欧美色图_国产综合一区二区三区视频一区_五月婷啪啪_手机看久久_成人免费xxxxx在线视频_毛茸茸xxx多毛pics

18842388900

網(wǎng)站建設(shè) APP開發(fā) 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 軟件開發(fā)

小程序:使用 wx:key 提升 wx:for 的渲染匯海

發(fā)表時間:2019-05-20 08:49:51

文章來源:沈陽網(wǎng)站建設(shè)

標簽:wx:key wx:for

分享:

瀏覽次數(shù):0


這邊文章的內(nèi)容主要講述在小程序中使用 wx:key 提升 wx:for 的渲染效率


之所以加上 wx:key 會提升 wx:for 的渲染效率,原因是(我的初步理解)

如果不加 wx:key, 在 setData 之后,如果 array 內(nèi)的數(shù)據(jù)如果發(fā)生改變,會重新創(chuàng)建前端的渲染對象加上 wx:key,重新渲染時,只是沈陽微信小程序

<a href=http://www.www.gfche.com.cn target=_blank class=infotextkey>沈陽<a href=http://www.www.gfche.com.cn target=_blank class=infotextkey>軟件開發(fā)</a></a>,<a href=http://www.www.gfche.com.cn target=_blank class=infotextkey>沈陽<a href=http://www.www.gfche.com.cn target=_blank class=infotextkey>軟件公司</a></a>

將對應的對象重新排序。未發(fā)生變化的對象,不會重新創(chuàng)建

參考官方的解釋

當數(shù)據(jù)改變觸發(fā)渲染層重新渲染的時候,會校正帶有 key 的組件,框架會確保他們被重新排序,而不是重新創(chuàng)建,以確保使組件保持自身的狀態(tài),并且提高列表渲染時的效率。

需要驗證的問題

加上 wx:key 之后,會根據(jù)給定的 key 進行排序么?

寫個簡單的測試頁面

<block wx:for="{{languages}}" wx:for-item="language" wx:key="id">  <text class="log-item">{{ language.id }} . {{ language.name }}</text></block>data: {  languages: [    {id: 1, name: 'php'},    {id: 4, name: 'javascript'},    {id: 3, name: 'golang'},    {id: 2, name: 'python'},    {id: 5, name: 'java'},  ],},

1

從測試結(jié)果來看,并不會影響到排序。

key 重名時是否會報錯
data: {  languages: [    {id: 1, name: 'php'},    {id: 4, name: 'javascript'},    {id: 3, name: 'golang'},    {id: 2, name: 'python'},    {id: 5, name: 'java'},  ],},click: function () {let language = {id: 5, name: 'kotlin'}let languages = this.data.languageslanguages.push(language)this.setData({languages: languages})}

微信小程序開發(fā)工具只會報一個警告,并不會導致程序崩潰

VM6265:2 Do not set same key {5} in wx:key

比較奇怪的是,這個警告只有在重新渲染時才會報,如果初始化時就使用同樣的 key,并不會導致警告。

相關(guān)視頻連接:小程序開發(fā)教程

以上就是小程序:使用 wx:key 提升 wx:for 的渲染效率的詳細內(nèi)容,更多請關(guān)注沈陽網(wǎng)站建設(shè)其它相關(guān)文章!

wx:key,wx:for

相關(guān)案例查看更多

主站蜘蛛池模板: 乌拉特中旗| 德钦县| 洛浦县| 潮安县| 双峰县| 讷河市| 临桂县| 桐柏县| 文成县| 万全县| 东安县| 屏东市| 南华县| 琼中| 永吉县| 商城县| 花莲县| 武胜县| 兴业县| 怀宁县| 汽车| 吉首市| 巨野县| 太和县| 禹城市| 浙江省| 旺苍县| 北安市| 汉寿县| 改则县| 宝鸡市| 曲松县| 麟游县| 齐齐哈尔市| 东乌珠穆沁旗| 陕西省| 洛浦县| 驻马店市| 襄汾县| 江津市| 东明县|