我将一个上下文对象传递到我的meteor / handlebars模板中,该模板名为menu
,来自javascript with
var context = {
keyForString: 'string!',
keyForFunction: function(){console.log('function!');}
};
return Template.menu(context); //to be rendered later
在我的Template.menu.functions中,this
变量只有keyForString
。 keyForFunction
(以及该功能)显然已被剥夺。
这是预期的吗?如果是这样,我如何将回调传递给我的模板代码?我想提供一个模板在单击菜单上的项目时应该调用的函数。
我希望模板的实例可以共享布局代码,但不必共享事件。例如,我有类似
的东西Template.menu.events = {
'click button': function() {
this.keyForFunction();
}
}
因此,单击实例A中的按钮可以执行一项操作,单击B中的按钮可以执行另一项操作,具体取决于我在keyForFunction
中传递的功能。
答案 0 :(得分:0)
事实证明,这完全如上所述。将对象存储在Session
中,我正在考虑这些对象,但这些对象无关紧要,这就是剥离函数的原因。