每次更新数组时如何向侦听器发出消息?

Posted

技术标签:

【中文标题】每次更新数组时如何向侦听器发出消息?【英文标题】:How to emitt a message to a listener every time when an array is updated? 【发布时间】:2020-08-13 23:37:23 【问题描述】:

我有以下场景:

每 2 秒将位置(纬度、经度)插入静态数组的服务类。 一个地图片段,在 onReady() 方法中调用 array getter 方法,然后在地图上绘制点,问题是当后台服务在未调用 getter 方法的数组中插入更多点。

所以问题是每次数组更新时如何通知onReady()方法调用getPoints()方法 ? (请记住,有两个单独的线程)。

我需要在 onReady() 方法中实现某种监听器,以监听位置数组的变化。

我正在考虑类似 Node - 事件发射器 -> 事件侦听器中的一些东西,但我没有找到解决方法。任何建议都非常感谢,谢谢!

【问题讨论】:

【参考方案1】:

在服务执行之前注意数组的大小,它可能为零或取决于您的逻辑。 现在每次当数组大小增加时,调用你想要通过你的逻辑执行的函数。 或者,如果您认为这种逻辑难以实现,您可以使用服务,A 服务在执行某些工作时会给出响应,您可以在该行调用您的函数。

【讨论】:

以上是关于每次更新数组时如何向侦听器发出消息?的主要内容,如果未能解决你的问题,请参考以下文章

如何向 GCM 发布通知

如何使用事件侦听器向对象数组添加新元素并将其显示在 html 页面上

Kafka - 在 Linux 和 Windows 之间创建代理侦听器时出错

如何使用事件侦听器向对象数组添加新元素并将其显示在 html 页面上(已编辑代码)

Flask + RabbitMQ + SocketIO - 转发消息

Discord bot - 发送多条消息的 Js 事件监听器