在微信小程序中我們一般通過(guò)以下方式來(lái)修改data中的數(shù)據(jù):
比如獲取小程序緩存:
wx.getStorage({key: 'is_screen',success: function (res) {this.setData({is_screen: res.data})}})
但是會(huì)報(bào)錯(cuò):
this.setData is not a function
這是因?yàn)閠his作用域指向問(wèn)題 ,success函數(shù)實(shí)際是一個(gè)閉包 , 無(wú)法直接通過(guò)this來(lái)setData
那么需要怎么修改呢?
我們通過(guò)將當(dāng)前對(duì)象賦給一個(gè)新的對(duì)象
var that = this;
然后使用_this 來(lái)setData就行了
完整代碼:
/*** 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面顯示*/onShow: function () {var that = this;wx.getStorage({key: 'is_screen',success: function (res) {this.setData({is_screen: res.data})}})},
可以關(guān)注微信公眾號(hào) lovephp,
轉(zhuǎn):https://www.cnblogs.com/ldj3/p/9139695.html
聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。