我刚开始使用backbone.js来创建一个水疗中心。我正在努力让书籍收藏听取模特改变,但没有任何反应。这是模型和集合:
N
这是观点:
var Book = Backbone.Model.extend({
idAttribute: 'id',
defaults: {
id: null,
title: '',
author: '',
completed: false
}
});
var BooksCollection = Backbone.Collection.extend({
model: Book,
url: 'books',
initialize: function() {
this.listenTo(this.model, 'change', this.debug);
},
debug: function () {
console.log('something happened !!!');
}
});
当我点击#save按钮时,作者被更改但没有记录任何内容。我哪里错了?感谢。
答案 0 :(得分:1)
模型中的事件会自动冒泡到集合中,因此您可以直接收听模型更改:
// in the collection
initialize: function() {
this.listenTo(this, 'change', this.debug);
},