vue中SignalR全局封装

如题所述

第1个回答  2022-07-09

是什么我就不多说了,可自行去 官网 查阅

1.安装signalr,无需安装其他如jquery之类的

2.新建一个名为signalR.js的文件

3.在main.js中引入并挂载到全局

4.初始化
我的需求是登陆之后连接服务器,所以我将初始化连接(initSR)的步骤放在了登陆成功获取到token时

但同时我又发现,当界面刷新时,由main.js中全局挂载的signaR会消失,所以需要在App.vue中再初始化一遍

5.使用
我的需求是订阅服务器中getNotification这个主题,当服务器那边任务处理完成时,就会给我发送一条消息,我拿到这条消息并根据消息内容进行下面的工作

特别注意 :当此组件生命周期结束时,记得销毁注册的这个方法,不然会导致重复触发上面这个回调(我尝试了官网中所用的off方法,无效,所以自己手动清空这个数组,有更好的方法麻烦也告知一下)