麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 課堂 > 小程序 > 正文

微信小程序使用setData修改數組中單個對象的方法分析

2020-03-21 16:01:28
字體:
來源:轉載
供稿:網友

本文實例講述了微信小程序使用setData修改數組中單個對象的方法。分享給大家供大家參考,具體如下:

微信小程序已經出來挺久的時間了,之前只是在文檔上粗略的看了一下,最近稍得空閑,便利用微信小程序平臺寫一個練手的項目,順便學習一下小程序開發,感覺大體跟前端開發基本類似,但是因為是在微信的平臺上運行,具體還是要根據小程序的規則來編寫代碼的,其中還是有部分的內容跟前端中常見的有所不同,于是接下來的博客里,也會順手記錄微信小程序開發過程中的一些坑,幫助后來的小程序開發者少踩一些坑,當然我踩的坑大部分都是以前的開發者踩過的,我所做的也僅僅是記錄,分享。

習慣使用Vue或者React這類框架的開發者們,肯定不會對修改data內中數組的單個對象而煩惱,因為這些框架已經幫我們很好的處理了這個問題,并且在文檔上也寫的非常清楚。

比如要求是有一個數組存放了購物車的商品信息,而你在購物車內修改了單個商品的期望購買數量后,我們就要動態的更新這個單個對象的購買數量值,如果在小程序里我們會怎么做呢?

如果你按照Vue的寫法來實現的話,不出意外會失敗。而微信小程序也只給我們提供了一個setData方法,這個方法是使用鍵值對的形式對數據進行修改,例如:

this.setData({  name : 'leon'})

回到我們剛剛的例子里,這時候,如果你想修改單個商品的數量信息,應該怎么寫?

首先展示一種錯誤的寫法:

Page({ data: {  array: [{text: 'init data'}], }, changeItemInArray: function (index) { this.setData({ 'array['+index+'].text':'changed data' }) }})

如果這樣動態的寫index,很顯然,這樣是無法使用在對象的key中的,我相信小程序的新手開發者可能嘗試過這樣的寫法。

那么正確的寫法究竟是怎么樣的呢?

changeItemInArray: function (index) { // 提前準備好對象 var item = this.data.list[index] item.count = 100 // 依舊是根據index獲取數組中的對象 var key = "list["+ index + "]" this.setData({ // 這里使用鍵值對方式賦值  key: item  }, function () {})}

最后,希望以后的小程序版本更新中,有更好的賦值方法。希望這篇文章能幫助到小程序的新手開發者。

希望本文所述對大家微信小程序開發有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一边吃奶一边插下面 | 久久人人爽人人爽人人片av高清 | 最新亚洲视频 | 嗯~啊~用力~高h | 成人短视频在线观看免费 | 免费在线观看成人网 | 欧美一极视频 | 国产一级一片免费播放 | 国产一级淫片a级aaa | 欧美一级黄带 | 午夜在线视频一区二区三区 | 久久羞羞视频 | 欧美成人高清视频 | 久久久久二区 | 色诱亚洲精品久久久久久 | 7777视频| 一二区电影| 久久久电影电视剧免费看 | 手机国产乱子伦精品视频 | 久草在线观看福利视频 | 国产精品视频一区二区三区四 | 黄色1级视频 | 国产精品久久久久久影院8一贰佰 | 一本一道久久久a久久久精品91 | 久久国产亚洲精品 | 欧美一级不卡视频 | 午夜视频在线 | 毛片网站网址 | 精品国产乱码久久久久久丨区2区 | 精品国产91久久久久久久妲己 | 国产成人精品二区 | 色婷婷a | 久久αv | 午夜视 | 久久精品亚洲精品国产欧美kt∨ | 国产午夜精品久久久久婷 | 少妇的肉体2无删减版 | 日本一级黄色大片 | www亚洲| 黄色特级| 欧美一级特黄特色大片免费 |