因为小程序是没有 watch 函数的所以需要自己写
一、在 app.js 页面
globalData: {
platformType: true,
},
// 修改全部中参数的方法
setGlobalData(object) {
for (const key in object) {
if (object.hasOwnProperty(key)) {
this.globalData[key] = object[key]
}
}
},
// 监听方法
watch: function (method, isstr) {
var obj = this.globalData;
Object.defineProperty(obj, isstr, {
configurable: true,
enumerable: true,
set: function (value) {
this._platformType = value;
method(value);
},
get: function (value) {
return obj._platformType === false ? false : true
}
})
}
二、在想监听的页面 js 中写
//先导入 app
const app = getApp()
// 然后在 attached 或者 onLoad 写
this.setData({
'platformType': app.globalData.platformType
})
let self = this
app.watch(self.watchBack, 'platformType')
// 然后写 watchBack 进行监听
watchBack: function (value) {
this.setData({
'platformType': value
})
},
三、 在监听的页面中 修改 全局的参数
app.setGlobalData({
"platformType": !this.data.platformType
})