在组件创建全局变量,在attached函数赋值 var that_ = null that_ = this
小程序组件中监听全局变量,方法中的this指向为undefined这是app.js globalData: { userInfo: null, loginMode: true, }, //app 全局属性监听 watch: function (method) { var obj = this.globalData; Object.defineProperty(obj, "userInfo", { //这里的 data 对应 上面 globalData 中的 data configurable: true, enumerable: true, set: function (value) { //动态赋值,传递对象,为 globalData 中对应变量赋值 this._showPictureDetail = value.showPictureDetail; this._pictureTime = value.pictureTime; this._pictureAddress = value.pictureAddress; method(value); }, get: function () { //获取全局变量值,直接返回全部 return this.globalData; } }) } 这是组件监听 created() { getApp().watch(this.watchBack) }, watchBack: function (value) { console.log(this) // 这里的this打印出来是undefined this.setData({ loginMode: false }) },
2023-04-03