使用vue+websocket实现聊天室遇到的问题,websocket怎么一次初始化,全部页面使用?
问题描述:
如题,我想要实现一个类似QQ的聊天室,在登陆进入到好友列表页面后进行websocket的初始化连接,用来获取用户在线状态和好友申请等信息。之后进入到好友的聊天页面时,又要初始化一次连接。而且同一个连接被多次初始化之后,消息接收出现混乱,经常A页面需要接收的消息被B页面接受了。
我想要的效果是在登陆后初始化一次连接,可以在之后的所有页面通用这个连接。
答
可以用vuex来解决这个问题,用vue构建单页面,socket的连接放在公共部分。另外可以在消息中加入type字段,以指定消息的类型。
答
放main.js import * as socketApi from './socket'
拿回来的数据放vuex