您可能想使用
Tracker.flush()
或类似:
通常,当您进行更改(如写入数据库)时,其影响(如更新DOM)会延迟到系统空闲时。这使事情保持可预测性–您可以知道DOM不会在运行时从您的代码下发生变化。这也是流星变快的原因之一。
Tracker.flush
强制完成所有挂起的反应式更新。例如,如果事件处理程序更改了会话变量,这将导致部分用户界面重新呈现,则处理程序可以调用flush立即执行重新呈现,然后访问生成的DOM
基本上
Collection.find
操作返回通常只计算一次的游标。
该主题由
this blog
也:
将文档发布到客户端时,它们将与其他文档合并
来自同一集合并重新排列到内存中的文档
名为minimongo的数据存储。正在重新排列的关键字。
许多meteor新开发人员都有一个发布数据的心智模型
存在于有序列表中。这就引出了这样的问题:“我
按排序顺序发布了我的数据,为什么不这样显示
在客户端上?“这是意料之中的。有一条简单的规则可以遵循:
如果您需要在客户机上订购文档,请在
客户。通常不需要在发布函数中进行排序
除非排序结果更改发送的文档(例如。
您正在使用限制)。
但是,您可能希望在以下情况下保留服务器端排序
数据传输时间很长。想象一下发布几个
一百篇博客文章,但最初只显示最近的十篇。在里面
这种情况下,最新的文档首先到达客户机
将有助于最小化模板渲染的数量。