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