次のコードでは、helper2 が再実行されるのに、helper1 が再実行されないのはなぜですか? 呼び出されるコンテキストと関係があるような気がします.changed()
。
Template.example.onCreated() {
var dep1 = new Tracker.Dependency(),
dep2 = new Tracker.Dependency();
Meteor.setInterval(dep1.changed, 1000); // doesn't work
Meteor.setInterval( () => dep2.changed(), 1000 ); // works
});
Template.example.helpers({
helper1: () => {
Template.instance().dep1.depend();
return new Date().getTime(); // never updates
},
helper2: () => {
Template.instance().dep2.depend();
return new Date().getTime(); // updates
}
});