- 登录成功后建立WebSocket链接,使用心跳机制保持连接状态
- 后端根据用户权限选择关闭或保持连接状态
- 收到消息时创建一个notify并以id作为key值保存到通知对象中
- notify自动消失前点击详情按钮视为消息已读
- 5秒后自动消失视为未读,关闭事件中设置未读数量加1,删除对象中相应notify实例
具体实现如下:
import { createNamespacedHelpers } from 'vuex'
const { mapState, mapActions, mapMutations } = createNamespacedHelpers(
'message'
)
export default {
data() {
return {
notifyObj: {},
}