Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用不同的回调方法获取和创建主干_Javascript_Ruby On Rails_Backbone.js - Fatal编程技术网

Javascript 使用不同的回调方法获取和创建主干

Javascript 使用不同的回调方法获取和创建主干,javascript,ruby-on-rails,backbone.js,Javascript,Ruby On Rails,Backbone.js,我们使用主干的fetch从服务器获取一些记录并添加到页面,使用create创建记录并添加到页面,添加到页面的部分通过add方法完成,因为create和fetch将触发它,现在我想让他们有不同的方式将添加到页面中,创建我想插入(prepend)到页面的记录,并将获取的记录附加到页面中,有没有好的方法呢?我假设您正在使用添加-事件来侦听何时将记录添加到页面中 create和fetch方法都将options-对象作为参数。这个obejct被传递了很多次,它最终将成为 现在,要区分create和fetc

我们使用主干的
fetch
从服务器获取一些记录并添加到页面,使用
create
创建记录并添加到页面,添加到页面的
部分通过
add
方法完成,因为
create
fetch
将触发它,现在我想让他们有不同的方式将
添加到页面中
,创建我想插入(prepend)到页面的记录,并将获取的记录附加到页面中,有没有好的方法呢?

我假设您正在使用
添加
-事件来侦听何时将记录添加到页面中

create
fetch
方法都将
options
-对象作为参数。这个obejct被传递了很多次,它最终将成为

现在,要区分
create
fetch
中的
add
-事件,请向
选项中添加一些易于识别的变量。比如说

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
fetch
中的选项集的差异,可能有更雄辩的方法来实现这一点,但这种方法您肯定知道