gpt4 book ai didi

socket.io - Angular 2 更新 “real time.” 中的对象

转载 作者:太空狗 更新时间:2023-10-29 17:50:41 25 4
gpt4 key购买 nike

您好,我正在尝试总结如何更新 angular 2 表。

这是我的:后端:express/MongoDB。更新通过外部应用程序输入数据库数据:90% 的数据将是静态的。每秒更新 10% 的数据。

我看过 Observables/promises。 HTTP 请求/套接字 IO 但我无法理解这些概念。

主要问题:我可以使用带有 socket.io 的可观察对象来更新记录吗?

关于数据更新的其他问题

  1. Angular 2 的 Observables – observables 是否仅在客户端拉取数据时使用?或者当数据被推送到客户端时,你可以将它与套接字一起使用吗? (所有在线示例都使用 observables 和 http 请求)
  2. 您可以使用 Socket IO 来更新对象还是仅用于新对象?每个示例都是一个聊天应用程序。
  3. 使用 http 请求时,如何设置请求数据的频率? (一些在线示例使用循环,但这似乎是错误的。)

最佳答案

  1. Observables 是基于事件的,因此它们可用于从利用网络套接字的服务器接收事件。看看这篇文章(“基于事件的支持”部分):

  2. 事实上它是新对象,但您可以利用 scan 运算符来聚合多个事件的内容。

    var obs = (...)
    obs.startWith([])
    .scan((acc,value) => acc.concat(value))
    .subscribe((data) => {
    console.log(data);
    });

    有关详细信息,请参阅此问题:

  3. 如果你想拉一个时间间隔,你可以利用 interval 方法:

    Observable.interval(3000).flatMap(() => {
    return this.http.get('/some-request').map(res => res.json());
    }).subscribe((data) => {
    console.log(data);
    });

关于socket.io - Angular 2 更新 “real time.” 中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37006264/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com