我需要跟踪包含大量不断更新的文档的集合的计数器。 (想想一个巨大的日志列表)。我不想想要做的是让服务器向我发送 250k 文档的列表。我只是想看到计数器上升。
我发现了一个非常相似的question here ,我还研究了 .observeChanges()在文档中,但再一次,似乎 .observe() 以及 .observeChanges() 实际上在跟踪添加、更改或删除的内容之前返回整个集合。
在上面的示例中,“added”函数将在每个返回的文档中触发一次以增加计数器。
这对于一个大集合来说是 Not Acceptable - 我只想跟踪计数的变化,因为我知道 .count() 绕过了整个文档集的获取。前一个示例仅涉及与房间相关的文档的计数,这不是我想要的(或者就此而言能够复制并开始工作)
我一定错过了一些简单的事情,我已经被难住了好几个小时。
非常感谢任何反馈。
最佳答案
您可以使用 meteor-streams 来完成此操作Arunoda 的智能包。它允许您在不需要数据库的情况下进行发布/订阅,因此您可以发送的一件事是例如 react 数。
或者,这稍微有点老套,但如果您有许多需要计算的东西或类似的东西,您可以有一个单独的“统计”集合(随意命名)以及包含该计数的文档.
关于javascript - 订阅现有集合的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19207692/