没关系,我找到了答案。这是因为incScore函数的第一个参数是事件,而第二个事件是实际传递的参数。
我正在尝试增加测验对象的得分属性,但我遇到了一些困难。在用户正确回答问题后,我正在使用全局触发事件来增加分数:
global.trigger('incScore', 300);
以下是incScore功能:
incScore: function(change) {
alert(JSON.stringify(change));
this.set({
score: this.get("score") + change
});
},
我想将分数提高300分,所以我发送300作为触发方法的第二个参数。我认为它会将300传递给incScore函数,但它会传递某种对象。我打印出对象的内容,这是各种各样的垃圾。如何访问应该传递给函数的300?
答案 0 :(得分:0)
首先,您应该观察incScore
事件
initialize: function() {
global.bind('incScore', _.bind(this.incScore, this));
},
incScore: function(event, score) {
console.log(score)
}
如果你触发jquery事件,第一个参数将是事件对象,从第二个参数开始会有你的数据。 Link to jquery api