app.js
App({
globalData: {
infoCount: 0
},
setWs(wsInstance) {
this.globalData.ws = wsInstance;
//监听websocket接收消息
wsInstance.onMessage((res) => {
this.globalData.infoCount = this.globalData.infoCount + 1
})
},
//监听器
watch: function (variate, method) {
var obj = getApp().globalData;
let val = obj[variate];
Object.defineProperty(obj, variate, {
set: function (value) {
val = value;
method(variate, value);
},
get: function () {
return val;
}
})
}
})
tabbar.js
Component({
/**
* 组件的属性列表
*/
properties: {
active: {
type: Number,
value: 0
}
},
/**
* 组件的初始数据
*/
data: {
tabs: {
0: "/pages/tabbar/home/home",
1: "/pages/tabbar/explore/explore",
3: "/pages/tabbar/trends/trends",
4: "/pages/tabbar/my/my"
},
show: false,
messageTotal: '',
info: app.globalData.infoCount
},
lifetimes: {
ready() {
getApp().watch('infoCount', () => {
//监听app.js中的infoCount值的变化并更新
this.setData({
info: getApp().globalData.infoCount
})
})
}
}
})
参考文章:https://blog.csdn.net/qq_45142260/article/details/138109064