用戶
 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

掃一掃,登錄網站

小程序社區 首頁 教程 查看內容

微信小程序之setData數組使用push的坑(數組操作最好在setData外面) ...

Rolan 2020-7-1 00:34

代碼如下:Promise.all(promiseArr).then(res = { this.setData({ commentlist: this.data.commentlist.push(comment) }) console.log(this.data.commentlist); });commentlist為數組,使用push后打印出來的是1后來 ...

代碼如下:

復制代碼
Promise.all(promiseArr).then(res => {
            this.setData({
              commentlist: this.data.commentlist.push(comment)
            })
            console.log(this.data.commentlist);
          });
復制代碼
commentlist為數組,使用push后打印出來的是1
后來改為concat就正常了
復制代碼
Promise.all(promiseArr).then(res => {
            this.setData({
              commentlist: this.data.commentlist.concat(comment)
            })
            console.log(this.data.commentlist);
          });
復制代碼

不只是push有這個問題,splice也有,說不定其他的方法也是這樣,為了保證沒有錯誤,建議所有的數組操作都放在setData外邊進行處理,如下:

復制代碼
Promise.all(promiseArr).then(res => {
            this.data.commentlist.push(comment)
            this.setData({
              commentlist: this.data.commentlist
            })
            console.log(this.data.commentlist);
          });
復制代碼

這樣應該就沒有什么問題了。

記住這個坑了。

鮮花
鮮花
雞蛋
雞蛋
分享至 : QQ空間
收藏
原作者: 深如墨&淡如水 來自: cnblogs
快乐十分复式