gpt4 book ai didi

javascript - Backbone : Is it possible to have multiple fetches at once

转载 作者:行者123 更新时间:2023-11-28 09:27:46 25 4
gpt4 key购买 nike

我正在尝试一次调用多个fetch(),目前当我运行此命令时:

function notWorking(){
collection1.fetch()
collection2.fetch()
collection3.fetch()
collection4.fetch()
}

如果我只使用 fetch() 一个,而在另外 3 个 fetch() 上返回 500 内部错误但是,如果我运行这个:

function working(){
collection1.fetch({
success:function(){
collection2.fetch({
success:function(){
collection3.fetch({
success:function(){
collection4.fetch()
}
})
}
})
}
})
}

可行,但似乎是一种可怕的做法,这是一次提取多个 fetch() 的更好方法吗?

(后端使用 ruby​​ 与 sinatra 和 datamapper 来实现其值(value))

最佳答案

正如 voithos 所建议的,您的核心问题是服务器端问题。 Backbone(甚至 jQuery)中没有任何东西可以阻止您同时进行多次获取。

话虽这么说,如果您坚持使用服务器端实现,您至少可以利用 Backbone 的 fetch 返回 jQuery 的 ajax 返回结果(它本身就是一个“延迟”对象):

function working(){
collection4.fetch().complete(
collection3.fetch().complete(
collection2.fetch().complete(
collection.fetch()));
}

或者,您实际上可以使 AJAX 请求同步,通过 fetch 将适当的选项传递给 jQuery,如下所示:

function working(){
collection.fetch({async: false});
collection2.fetch({async: false});
collection3.fetch({async: false});
collection4.fetch({async: false});
}

关于javascript - Backbone : Is it possible to have multiple fetches at once,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14127781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com