vue3 中,如何使用 MQTT 或 websocket 统一接收数据,页面中单独处理数据
mqtt.js const OnConnected= () => { onMessage(); } const OnMessage= (data) => { const {obj1,obj2} = data // 如何在这里将 obj1 数据传递 page1 ,将 obj2 数据传递 page2 }
page1 在这里只接收 obj1 数据
page2 在这里只接收 obj2 数据
![]() | 1 vace 2023-03-26 23:01:33 +08:00 1. pinia 或者 vuex 之类的状态管理同步 2. event bus: https://v3-migration.vuejs.org/breaking-changes/events-api.html bus.$emit('message-1', obj1) bus.$emit('message-2', obj2) page1: bus.$on('message-1', ...) page2: bus.$on('message-2', ...) |
![]() | 2 pubby 2023-03-26 23:06:34 +08:00 via iPhone vuex 之类的,在 app 里 commit 消息 page 里各自 subscribe ,取需要的数据 |
3 hb1988 2023-03-27 08:34:49 +08:00 补充 rxjs ; customEvent ; |
![]() | 4 musi 2023-03-27 08:39:37 +08:00 存到 store 里,然后页面自己拿 |
![]() | 5 erhsilence 2023-03-27 08:55:21 +08:00 mitt |
9 jahnsli OP @erhsilence 想到这个,但不知道还有没有更好的方案 |
![]() | 11 lingxiaoli 2023-03-27 10:37:15 +08:00 @jahnsli #8 你就是用两个文件来定义 store 来存 最后还是在内存里 不清楚你所谓的不臃肿意义在哪里? |
![]() | 12 musi 2023-03-27 11:28:53 +08:00 |
![]() | 13 rm0gang0rf 2023-04-03 13:57:19 +08:00 在下全局变量了,刚刚写完。。是不是很 low~ |