Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.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/ajax/6.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 使用特定的ajax调用设置集合获取_Javascript_Ajax_Backbone.js - Fatal编程技术网

Javascript 使用特定的ajax调用设置集合获取

Javascript 使用特定的ajax调用设置集合获取,javascript,ajax,backbone.js,Javascript,Ajax,Backbone.js,我需要创建一个集合,但我需要通过这个集合获取,不是通过它的url,而是通过内部的特定ajax调用。有可能吗?我试图更好地解释:在正常情况下,当通过集合获取时,获取使用集合中的url,但我需要通过ajax调用而不是url使用结果 $.ajax({ type: 'GET', headers: {'X-Parse-Application-Id':'qS0KLM***EM1tyhM9EEPiTS3VMk','X-Parse- REST-API-Key':'nh3eoUo9G8Df****vbF2gMh

我需要创建一个集合,但我需要通过这个集合获取,不是通过它的url,而是通过内部的特定ajax调用。有可能吗?我试图更好地解释:在正常情况下,当通过集合获取时,获取使用集合中的url,但我需要通过ajax调用而不是url使用结果

$.ajax({
type: 'GET',
headers: {'X-Parse-Application-Id':'qS0KLM***EM1tyhM9EEPiTS3VMk','X-Parse- 
REST-API-Key':'nh3eoUo9G8Df****vbF2gMhcKJIfIt1Gm'},
url: "https://api.parse.com/1/classes/_User/",

data: 'where={"amici": 
{"__type":"Pointer","className":"_User","objectId":"g0fRKnrgZN"}}',//restituisce chi ha   
negli amici l'id objectId
//contentType: "application/json",

success: function(data) {
      console.log(data );

    },
    error: function(data) {

      console.log("ko" );
    }



});
我需要通过基于此ajax调用的提取创建我的集合。

选项1)覆盖当前集合中的提取:

fetch: function(options) {
            // your extra code
            //..
            // maintain the return below if want to preserve the original fetch
            //return Backbone.Collection.prototype.fetch.call(this, options);
},
选项2)如果要将其用于所有收藏:

Backbone.Collection
扩展到新对象
YourCollection
,并覆盖此新对象中的获取。现在,您的新收藏可以扩展您的收藏,而不是
主干。收藏

PS如果需要,还可以修改ajax调用:

    var ajax = $.ajax;

    $.ajax = function(url, options) {
       //your code
       return ajax.call(this, url, options);
    };

您可以通过以下方式覆盖fetch call的任何选项:

yourCollection.fetch({url: newUrl})
或者您可以使用如下构造:

yourCollection.fetch = function(options) {
    return this.constructor.__super__.fetch.call(this, _.extend({url: newUrl}, options));
};
例如,如果要覆盖整个视图中的
yourCollection
的fetch调用。然后在此视图中,您将能够只使用
yourCollection.fetch()
,而不使用
newUrl
参数


希望对您有用。

您能提供一些代码让我们更好地了解您想要完成的任务吗?如果我想返回ajax结果?