uniapp globalData()的赋值问题,mqtt连接
代码
App.vue
globalData: {
client: {
"32323":{
name:'1212',ws:null
}
},
上面的ws是mqtt连接后的实例
b.vue页
//onload时候赋值给client
this.client = getApp().globalData.client[this.clientkey].ws
//mqtt连接后赋值给globalData
this.client = mqtt.connect(...)
getApp().globalData.client[this.clientkey].ws = this.client
问题描述
现在的问题是一开始进入b页面,连接mqtt都没问题,能收到消息也能发送
但是我这时候断开连接
this.client.end();
getApp().globalData.client[this.clientkey].ws.end();
返回首页,再次进入b页面,这时候却是连接的状态【打印下this.client.connected的状态是连接的】;很奇怪,也就是说getApp().globalData.client[this.clientkey].ws.end();这一步似乎没效果; 接着我再发送消息,这时候也能发送在f12-network中能看到发送后的响应,但是b页的message监听是无效的