我尝试在on()
内的自定义事件上设置ReactiveDict变量,但我收到此错误:Uncaught TypeError: Cannot read property 'templateDictionary' of null
。
第二个问题是,如果在ReactiveDict()
中定义onRendered
是否有意义?
Template.something.onCreated(function() {
this.templateDictionary = new ReactiveDict();
});
Template.something.onRendered(function() {
anything.on({
'element:mouseover': function(elementView, event){
Template.instance().templateDictionary.set( 'showExtraFields', true );
}
});
});
Template.something.helpers({
anything: function() {
var result = Template.instance().templateDictionary.get( 'showExtraFields' );
console.log(result);
}
});
答案 0 :(得分:2)
将实例引用放在onRendered函数中。不在另一个功能内。范围问题。
答案 1 :(得分:0)
我不知道anything.on
是什么,但试试这个:
Template.something.onRendered(function() {
anything.on({
'element:mouseover': (elementView, event) => {
this.templateDictionary.set( 'showExtraFields', true );
}
});
});
使用ES6,Luke!