更改一个模板的反应数据会重绘整个页面

时间:2013-05-17 06:40:06

标签: meteor

我有一个带有两个模板的页面,一个带有工具栏的模板,第二个带有页面的其余部分。

工具栏中的按钮以启用或禁用的形式显示,具体取决于会话变量。这是工具栏中的一个条目:

          {{#if canValidate}}
             <img id="validateForm" class="img-rounded" src="/images/nav/form_green.gif" style="height:32px; width: 32px"/>
          {{else}}
             <img id="validateFormDisabled" class="img-rounded" src="/images/nav/form_green_disabled.gif" style="height:32px; width: 32px"/>
          {{/if}}

canValidate功能非常简单:

Template.formData.canValidate = function () {
   var states = Session.get("selected-form").states;
   return Session.get("selected-data-valid") && userHasPermission('validate') && Session.get("selected-data").state != states[states.length - 1].techName ;
}

每当selected-data-valid的值发生变化时,整个页面都会重新绘制。如何让Meteor仅重绘工具栏。

感谢您的支持

Micha Roon

1 个答案:

答案 0 :(得分:0)

您可以将此部件移动到新模板或使用{{#isolate}}{{/isolate}}

进行包装