我很难理解当我将事件添加到某个模板时,"这个"知道要参考的文件和集合。
示例:
Template.game.events({
"click a.one-plus": function(event, template){
event.preventDefault();
Games.update({_id:this._id}, {$inc:{
"teams.0.score":1
}});
},
});
答案 0 :(得分:1)
this
将引用与触发事件的模板(或模板片段)相关联的上下文。
让我们说你的模板是这样的:
<template name='myTemplate'>
<button id='myButton'/>
{{#each myList}}
<button class='mySecondButton'/>
{{/each}}
</template>
你已经定义了
Template.helpers({
myList() {
return [1,2,3];
}
});
然后click
上myButton
的上下文将包含this.myList()
。 (如果您使用Router
,则可能会使用不同的方式将数据绑定到模板。)
但请注意:在each
迭代中,上下文将更改为当前迭代器元素。因此,this
在这种情况下将分别为1
,2
和3
,因此三个.mySecondButton
按钮将看到不同的上下文。 each
更改了上下文,with
也是如此。