我希望我的模型每次更改时都保存到服务器.
我试过了:
initialize: function() {
this.bind('change', this.save());
},
Run Code Online (Sandbox Code Playgroud)
我是Backbone的新手,所以我愿意相信有更好的方法来实现这一目标.基本上我想避免在我的代码中的其他点调用model.save,只需每次模型更改时自动保存到服务器.
dae*_*onl 21
小心使用this.save直接:
this.bind('change', this.save);
Run Code Online (Sandbox Code Playgroud)
将导致随change事件发送的已更改属性传递给save方法,这将导致第二个'change'事件被触发,因此它将被保存两次.
而是使用:
this.bind('change', function(){ this.save(); });
Run Code Online (Sandbox Code Playgroud)
Der*_*ley 12
你立即调用this.save而不是作为回调函数传递它.删除括号this.save:
initialize: function() {
this.bind('change', this.save);
},
Run Code Online (Sandbox Code Playgroud)
并且您的模型的this.save方法将作为函数引用传入,允许在模型更改时调用它.
| 归档时间: |
|
| 查看次数: |
3877 次 |
| 最近记录: |