Angularjs(phonegap)和socket.io

时间:2016-03-06 16:24:30

标签: angularjs cordova sockets

在实现监听器时,我究竟应该如何解决这个问题?我与socket = new socket(url,...建立了连接,但需要在我的主控制器(我打开连接)以及实现监听器的代码中访问此变量。但如何确切?我应该在单独的控制器中实现监听器socket.on("some_message,...吗?此控制器可以访问UI中的任何元素以进行交互吗?或者我应该将我的套接字代码实现为angularjs中的服务?非常感谢你的帮助

1 个答案:

答案 0 :(得分:0)

我建议你看看angular-socket-io,这个库是socket.io的一个角度包装器,有大量的例子说明如何在文档中做这样的事情。

如果你决定自己编写这个包装器 - 那么,是的,你应该使用负责保存那些套接字objs的角度服务(或工厂),这个服务在你的控制器将会死的时候不会死。 当您在作用域上更改某些内容作为对某个事件的响应时,您应该将该事件转发给控制器,因此控制器将注册该事件,但控制器将更改范围。 (或者你自己使用ctrl作为),如果它不够清楚,请在下面评论,我将添加一些代码示例。