在我的骨干模型中,当有变化事件时我会调用save。
myModel = Backbone.View.extend({
initialize: function() {
var self = this;
self.model.on("change", function() { self.model.save(); });
}
});
从Backbone文档中,我了解Backbone希望从服务器返回一个json对象。
所以我将模型发送回客户端。然后骨干更新模型,再次触发更改事件,这会导致它再次重新启动。
防止此行为的推荐方法是什么?
答案 0 :(得分:1)
一般情况下,当你不想要动作的副作用时,只需传递一个silent: true
选项。例如:
self.model.on("change", function() { self.model.save({silent: true}); });
我没有经过测试,以确保这解决了你的情况,但我怀疑它会。
答案 1 :(得分:0)
更清晰的写作方式是。
//inside you model
initialize: function () {
this.on('change',function(){ this.save(null,{silent: true}); });
}
一样
第一个arg是属性,第二个是选项
希望这有帮助