0

我使用 findOne 只是为了获取我的收藏中的某个元素。

但是,当我这样做时,包含这些集合的所有模板函数都会重新运行并刷新内容。内容相似,问题是我正在将样式应用于其中一些元素,而这些更新也只是重置了所有内容。更重要的是:那些刷新完全没用。

例如,我有这个模板:

Template.content.cars = function () {
    alert("I AM RERUN!");
    return Cars.find();
};

在另一个函数中,我正在这样做:

Cars.findOne({ _id: Session.get('current_car') }, {});

为什么第一个模板会重新运行?难道我做错了什么?

4

1 回答 1

1

我不确定为什么要重新运行您的第一个模板:您确定没有其他事情发生吗?

但作为对您问题的一般非答案:您应该期望依赖于整个集合的模板将重新运行多次(例如,当页面首次呈现时数据增量加载)。使用流星,您需要以这种重新渲染不会导致问题的方式编写 HTML/CSS。

在不了解您的问题的情况下,我真的不能说更多。

于 2012-08-30T06:03:46.103 回答