Backbone用不同的回调方法获取和创建

时间:2013-08-29 11:05:37

标签: javascript ruby-on-rails backbone.js

我们使用Backbone的fetch从服务器获取一些记录并添加到页面,使用create创建记录并添加到页面,add to the page部分由{{{}}完成1}}方法原因addcreate将触发它,现在我希望它们有差异到fetch,创建记录我要插入(前置)到页面并获取记录追加到页面,有没有很好的方法来做到这一点?

1 个答案:

答案 0 :(得分:1)

我假设你正在使用add -event来监听何时将记录添加到页面。

createfetch方法都将options对象作为参数。这个obejct传递了很多,它最终会成为3rd parameter in your add -event triggers as well

现在,您可以做些什么来区分来自addcreate的{​​{1}} - 事件,将一些变量添加到您可以轻松识别的fetch对象中。例如

options

通过检查Backbone在var onAdd = function(model, collection, options) { if(options.isFetch) console.log('this model was fetched!'); if(options.isCreate) console.log('this model was created!'); } model.on('add', onAdd); model.fetch({isFetch: true}); collection.create({foo: "bar"}, {isCreate: true}); create内部设置的差异选项,可能会有一些更有说服力的方法来实现这一目标,但这样你肯定会知道。