在使用Angular的单页面应用程序引擎时,依靠socket.io/express.io中的“disconnect”事件

当我离开被单页面应用程序引擎拦截的页面时,如何添加“断开连接”事件?

我设置了某些事件(有点像YouTube上的stream媒体事件),每个事件都需要自己的套接字连接。 我现在在Angular上设置了一个单页面引擎,可以在这些事件之间切换。

我曾经依靠“断开连接”事件让我知道什么时候有人离开了事件,但他们不再工作 – 如果我通过单页导航离开,套接字永远不会closures。

有什么办法来configuration套接字仍然断开?

我不太理想的方法是在每个页面的控制器上创build一个套接字连接的新实例,我可以从事件页面导航到该页面,并禁止多个连接。

如果有人有一个更好的主意,我很乐意听到它。

非常感谢。

您可以手动调用它,因为您正在控制页面导航 – 无论何时客户端正在从一个页面导航,请致电

socket.disconnect(); socket.close(); 

这将确保当客户端从一个页面导航时,套接字在此之前断开连接。