我正在尝试构建一个表单,您可以根据需要动态添加文本输入。在用户点击“保存”之前,我不想保存任何内容。所以在没有数据库集合的情况下完成这项工作非常重要。
我提出了这个解决方案(http://meteorpad.com/pad/zP8EGjigXASfFrXsF/Input%20Test),但我不确定这是正确的做法还是更方便?
答案 0 :(得分:1)
大多数用户可能不再需要直接使用Tracker.Dependency
,因为现在有更高级别的选项更容易使用。这有两个选择:
您可以声明客户端集合,如:
InputOptions = new Mongo.Collection(null);
它将具有与普通集合相同的所有行为,而不尝试将其数据同步到服务器。这可能就是你想要的。唯一的缺点是该集合可供您的整个应用程序使用,因此其反应性不会被隔离到单个模板。
您可以使用ReactiveVar或ReactiveDict和scope it to your template。这比直接使用Tracker.Dependency
要好一些,因为您无需在整个地方调用changed
。总体而言,语法比客户端集合更麻烦,但如果您需要多个集合,则可以获得隔离反应的优势。