Meteor中的辅助功能是否有反应?

时间:2018-03-13 20:26:37

标签: javascript meteor meteor-blaze spacebars

假设我的HTML文件中包含以下代码:

{{#if someVar}}
    {{>someTemplate}}
{{/if}}

现在,如果最初someVar返回false,则不会创建someTemplate模板。现在,由于某些事件,someVar返回的值true是否会呈现模板?我是否需要someVar ReactiveVar才能使用此功能?或者我应该使用autorun?这是最好和最简单的方法吗?使用Angular中的双向绑定可以很容易地实现这一点。

1 个答案:

答案 0 :(得分:0)

考虑上面的给定模板:

10^23

非反应性示例

{{#if someVar}}
    {{>someTemplate}}
{{/if}}

反应例1

var someNumber = 42; // changing this will not cause a new run

Template.theTemplate.helpers({
  someVar() {
    return someNumber;
  }
});

反应例2

var someNumber = new ReactiveVar(42); // changing this will cause a new run

Template.theTemplate.helpers({
  someVar() {
    return someNumber.get();
  }
});

使用ReactiveVar oder ReactiveDict自动实现上述的双向绑定。