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

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

微信小程序 setData 對 data數據影響問題

2020-03-21 15:59:41
字體:
來源:轉載
供稿:網友

我是純前端的,有些時候沒有后端接口,只能模擬一些數據來操作。偶然之下,發現了setdata 的一些機制,也有可能不對,請多指教。

先放結論:data的變量通過setdata綁在一起,是同步變化的

準備做一個一鍵還原界面的按鈕事件,如果有后端接口,只需調一下接口,就可以了。問題是沒有,于是想弄兩個一模一樣的數組A,B;A用來渲染界面,一鍵還原的時候,就把B的值賦給A,從而引起頁面重新渲染,達到重置界面的效果。

結果一點反應也沒有。

data里有模擬的數組  itemleft  itemright,二選一,

定義代碼是這么寫的

this.setData({  uniqueitem: (id == 'unfinish') ? this.data.itemleft[index] : this.data.itemright[index],  cloneitem: (id == 'unfinish') ? this.data.itemleft[index] : this.data.itemright[index],  baninput: (id == 'unfinish')?false:true})

這是一鍵還原的代碼

this.setData({  uniqueitem:this.data.cloneitem})

后來通過console.log發現   uniqueitem、cloneitem和this.data.itemleft[index] 的值是一模一樣的,意思是,當我改變uniqueitem的時候,其他兩個都會跟著變。

然后,我把cloneitem的值通過緩存還獲取,代碼變成了這樣

this.setData({  uniqueitem: (id == 'unfinish') ? this.data.itemleft[index] : this.data.itemright[index],  baninput: (id == 'unfinish')?false:true})var that=thiswx.getStorage({  key: 'item',  success: function(res) {    console.log(res)    that.setData({      cloneitem:res.data    })  },})this.setData({  uniqueitem:this.data.cloneitem})

改成這樣之后,一鍵還原第一次正常,后面再點全不正常

這是測試的console順序

console.log(this.data.itemleft[0])console.log(this.data.uniqueitem)console.log(this.data.cloneitem)

事先說明,改變date,改的是2的date

我通過一個函數改變了date,加1,

可以看到 1和2同時改變,3不變;

一鍵還原第一次

可以看到,1不變,3的值賦給了2;到目前正常

再次改變date,

可以看到,2和3一起變,1不變了

一鍵還原

和上面一樣不變了

后來我改成

var aaa = this.data.cloneitem;this.setData({  uniqueitem:aaa})

效果和上面一樣。

結論,

當data有3個變量,a和b、c

this.setData({  a:this.data.b  c:this.data.b})

意思是,a和b綁一起,c和b綁一起,3個一起變,改變一個等于改變3個。個人猜測,應該是存放變量a,b,c 的地址變成一個了。

this.setData({  a:this.data.b})

a和b一起變。

this.setData({  a:this.data.c})

a不和b一起變,和c一起變。

簡而言之,data的變量通過setdata綁在一起,是同步變化的,要小心。

總結

以上所述是小編給大家介紹的微信小程序 setData 對 data數據影響問題,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: www.理论片| 久久99精品国产99久久6男男 | 毛片在线免费视频 | 日韩精品一区二 | av免费在线网站 | 亚洲影院在线 | 一区二区三区在线播放视频 | 欧美成a人片在线观看久 | 国产精品成人一区二区三区电影毛片 | 粉嫩av一区二区三区四区在线观看 | 欧美精品日日鲁夜夜添 | 日韩中文字幕三区 | 手机免费看一级片 | 久久久久久久99 | 欧美性黄 | 国产亚洲欧美视频 | 成人精品一区二区三区中文字幕 | 国产精品v片在线观看不卡 成人一区二区三区在线 | 一级国产航空美女毛片内谢 | 在线中文字幕亚洲 | 日韩午夜片 | 午夜精品久久久久久毛片 | 激情久久一区二区 | 成人一区二区三区在线 | 国产一级毛片高清视频完整版 | av在线免费观看不卡 | 黄色大片在线观看 | 萌白酱福利视频在线网站 | 欧美日韩高清一区二区三区 | 一区二区久久精品66国产精品 | 狠狠干天天操 | 97精品视频在线观看 | 国产精品亚洲三区 | 国语自产免费精品视频在 | 欧美日韩国产成人在线观看 | 色淫网站免费视频 | 精品久久久久久久久久久aⅴ | 一区二区三区在线观看av | 国产精品jk白丝蜜臀av软件 | 国产69久久久 | bt 自拍 另类 综合 欧美 |