我用解析函数建模
var File = Backbone.Model.extend({
...
parse: function(response) {
console.log('Parsing response')
}
});
var FileView = Backbone.View.extend({
...
initialize: function(id) {
this.file = new File({id: id.id});
console.log('Fetching object')
this.file.fetch();
this.render();
},
render: function() {
console.log('Rendering view');
this.$el.html(this.template(this.file.JSON()));
}
})
预期的结果是:
Fetching object
Parsing response
Rendering view
但这就是我得到的:
Fetching object
Rendering view
Parsing response
为什么是这样?根据文档:
每当服务器返回集合的模型时,Backbone 都会在 fetch 中调用 parse。
为什么获取模型后不直接调用解析函数?如何强迫它这样做?