我有以下模型:
App.Item = Backbone.Model.extend({
urlRoot : '/item',
// Default attributes
defaults: {
user_has_liked: false,
},
initialize: function(){
this.on('item-id-changed', this.onItemIdChange);
},
onItemIdChange: function(itemId){
console.log('item id change');
this.set({'id': itemId});
var that = this;
this.fetch({
success: function (item) {
}
})
},
以及点击时的以下触发器:
在我的另一个观点上,这不是这个模型绑定到我的观点:
loadNewItem: function(ev) {
ev.preventDefault();
var self = $(ev.currentTarget);
var itemId = $(self).attr('data-item-id');
//trigger a new event for listener
if (itemId) {
console.log('triggger');
this.trigger('item-id-changed', itemId);
}
},
为什么它onItemIdChange
从未被调用?