我创建了一个名为“艺术家”的主干模型和一个名为“艺术家视图”的主干视图。我成功地获取了模型,因为我可以在我的 Chrome devtools 网络选项卡中看到它。
但是,此时 fetch 没有触发任何“更改”事件。奇怪的是,它在创建模型时很好地触发了一个“更改”事件,但在获取这个模型时却没有......
我可以在 fetch() 方法中使用成功回调,但我觉得这不是最合适的方法。任何想法 ?
模型和视图初始化:
var artist = new Artist({id: 3});
var artistView = new ArtistView({model: artist});
然后我获取我的模型:
artist.fetch();
在我的主干视图类中,我聆听来自模型的“更改”事件:
var ArtistView = Backbone.View.extend({
initialize: function() {
this.model.on("change", this.test());
},
test: function() {
console.log(this.model.get("name"));
}
});
编辑:“同步”事件也不起作用。当我创建模型时,它会很好地触发“同步”事件,但在成功获取模型时不会。