我正在实例化一个新的 ReactiveVar:
Template.myTemplate.onCreated(function() {
this.var1 = new ReactiveVar(0);
}
当用户选择新的年份值时,我有一个 Tracker.autorun 强制重新运行:
Template.myTemplate.onRendered(function() {
Tracker.autorun(function() {
var year = Session.get('chartYear').toString(); // This session is from another template
// Do stuff
...
Template.instance().var1.set(new data);
}
}
我的助手重新运行该功能:
Template.myTemplate.helpers({
function1: function () {
return Template.instance().var1.get();
}
不知道发生了什么,但是当第一次选择年份值时,一切运行正常。但是当用户选择一个新的年份值时,一个 TypeError 的结果:
"TypeError: null is not an object (evaluating 'Template.instance().var1')"
但是,如果我用 Sessions 替换 ReactiveVars,当用户选择不同的年份值时,一切正常。有人可以帮忙吗?