Meteor在文档发生变化时呈现视图。
Template.story.data = function() {
var storyID = Session.get('storyID');
var story = Stories.findOne({
_id: storyID
})
if (!story)
return;
return story;
};
这是故事模板的模板助手,从故事文档中获取故事。
当像story.title
这样的字段发生更改时,我希望模板重新呈现。但是当像story.viewingusers
这样的字段发生变化时,我不想重新渲染模板。无论如何要做到这一点?
通过将发布功能设置为不发布这些字段,解决了触发问题的具体问题。但是,该解决方案并不适用于所有用例,因此需要一般解决方案。
答案 0 :(得分:3)
您正在寻找的是#constant
模板助手。
我在你的情况下做的是将popover标记包装在一个常量块中,然后在story.rendered
函数中手动更新该块中的内容。
这样的事情:
story.html:
<template name="story">
...
{{#constant}}
<!-- Popover markup here -->
{{/constant}}
...
</template>
client.js:
Template.story.rendered = function(){
//Update logic here
}