【发布时间】:2014-08-21 09:03:26
【问题描述】:
将文档添加到已发布集合时的预期反应行为是什么?更具体地说:将文档添加到集合中是否会使对该集合的所有订阅(甚至那些不匹配的订阅)无效并导致重新呈现所有相关的 ui 元素?
这就是我现在所经历的,至少。
更具体地说:我有表单,有一些“普通”字段,但也有列表。这些列表还包含包含字段的子表单。两种类型的表单都存储在一个通用数据集合中。此数据集合的视图通过细粒度订阅进行管理。
当我添加一个新的列表元素,一个新的子表单到基本表单时,整个基本表单被重新渲染。甚至没有相关的基本形式被重新渲染。
我有一个 github repo 展示了这个,虽然有点混淆。这是一个电影数据库。您可以添加电影、为其命名、标语以及为电影添加演员。演员有名字和家。将演员添加到电影时,每部电影都会重新渲染。
https://github.com/Crenshinibon/fields3/tree/462a9291bfc400a2731c21d2debdd4071be764ed
我知道这个问题:Understanding Meteor Publish / Subscribe 并认为这部分实际上是缺失的。 (我只是没有足够的声望点可以在 cmets 中询问)我认为我非常了解 Meteor 的 Pub/Sub 机制。只是由此产生的反应行为有点不清楚。
我也知道这个问题:Reactivity, isolation, and lists。但它对于 Spark 和 Blaze 的变化很大(尤其是它使#isolate 过时了。)
在我(再次)重建我的应用程序以将各种表单(甚至属性)放在不同的集合中以避免重新加载“整个页面”之前,我想我可能会问,也许我有一些东西不见了。
我在 0.9.0-rc10。
【问题讨论】:
标签: collections meteor