AngularJS - 在标签/窗口之间共享一个websocket

时间:2017-05-31 12:33:31

标签: javascript angularjs websocket notifications web-notifications

我使用angular-websocket打开WebSocket,应用程序正在等待消息,然后显示网络通知。

我注意到当有超过1个标签打开时,会有很多连接,然后每个标签都会收到一条消息,并且当它应该显示一次时,会显示1 X TABS_NUM个通知。

我认为为了使其正常工作,我需要为整个应用程序打开1个WebSocket。

有什么想法吗?在这种情况下我该怎么做?

1 个答案:

答案 0 :(得分:1)

使用tag解决了我的问题:

  

用户通常不希望收到大量通知   在很短的时间内 - 例如,如果一个使者   应用程序通知用户每个传入的消息,他们是   被送了很多?避免向用户发送太多垃圾邮件   通知,可以修改待处理的通知   队列,用新的替换单个或多个待处理通知   之一。

     

为此,可以在任何新通知中添加标记。如果一个   通知已经有相同的标签,尚未显示,   新通知将替换先前的通知。如果   已经显示了具有相同标签的通知   关闭上一个通知并显示新通知。

new Notification(notificationMessage.title, {tag: notificationMessage._id});