使用Angular JS,在路由改变时关闭web套接字连接的正确方法是什么?



这个问题不言自明。

如果我在Angular JS中通过控制器打开一个web套接字连接,它将在导航(路由更改)后保持打开状态。

这当然是正常的行为,但是我想知道在导航时请求关闭连接的"最佳实践"方式是什么。

我显然可以钩住$routeChange...方法并广播到控制器。但我错过了什么吗?有没有更好的办法?

监听控制器的$scope上的$destroy事件,并清理所有需要清理的东西,在您的情况下,这将关闭websocket连接。

$scope.$on('$destroy', function(event) {
    ...
});

关于angular控制器生命周期的更多背景信息可以在这个答案中找到。

相关内容

  • 没有找到相关文章

最新更新