[英]SOCKET.IO analogy in angular application (with rx.js)
我正在开发angular(2)应用程序。 我想在后端更改数据时更新视图。
getData() {
return this.http.get("some url")
.map(result => result.json());
}
如何在组件中开发侦听器,该组件将是侦听和更新视图?
因此,有两种解决方案取决于您的能力:
然后,您可以在服务器上实现websocket支持,然后使用https://github.com/ohjames/rxjs-websockets之类的工具将套接字事件自动包装在rxjs可观察对象中。
好吧,在这种情况下,您将必须对服务器进行定期轮询。 看起来像这样:
Rx
.Observable
.timer(0, 1000) // once every second
.mergeMap(_ => this.http.get("/url").map(json => result.json()))
如果服务器实现良好(并且您发送了正确的标头),则它可能会向您发送回304
HTTP代码,从中您可以推断出自上次调用以来未发生任何情况,并且可以过滤掉这些情况。
希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.