渲染一个已经渲染好的模板

Render an already rendered template

我有一个已经呈现的模板和另一个带有复选框的模板。

<template name="first"> </template>

<template name="second">
   <input type="checkbox" checked="true" /> 
</template>

在Template.first.rendered中,我有一个关于输入的if/else。 如果用户 check/uncheck 框,我有一个侦听器来捕获事件,我想从这个事件侦听器函数再次重新呈现模板 "first"。

我一直在四处寻找,但我没有找到如何再次 "call" 渲染函数...

这可能吗?

谢谢

您可以为此使用会话:

<template name="first">
  {{#if updated}}
    if block
  {{else}}
    else block
  {{/if}}
</template>

Template.first.helpers({
  updated: function(){
    return Session.get('updated');
  }
});

<template name="second">
  <input type="checkbox" checked="true" /> 
</template>

Template.second.events({
  'click input': function(event, template){
    var x = template.$('input').is(":checked");
    Session.set("updated", x);
  }
});

这是一个MeteorPad