在发出多个ajax请求时,是否有一个“良好的模式”来跟踪响应排列的数据?

时间:2015-05-17 14:25:35

标签: javascript ajax backbone.js reactjs reactjs-flux

我构建了许多客户端js应用程序,并且主要使用Backbone。 Backbone总是希望你的api在完成这样的ajax动作时返回创建/更改/删除模型的副本,从而可以轻松确定哪个“模型”刚刚更新。

我正在开发一个新场景(新框架,新构建的API),其中我从API返回的是成功/错误状态代码。整个“返回整个模型”看起来像是一个拐杖......但是我越努力追踪这些异步动作就越觉得它是必要的。

是否有某种约定(可能在Backbone世界之外)更容易处理这种事情?

编辑:我可能想指出我正在使用FLUX,因此单向流程阻止我只是在调度员两侧交叉布线。

1 个答案:

答案 0 :(得分:1)

我的问题标题对我来说比描述更清楚,所以我会接受。

如果您在跟踪多个ajax请求结果时遇到困难,则应使用Promises。

例如,使用Q library,您可以执行以下操作:

Q.all([AjaxModel1(), AjaxModel2(), AjaxModel3()])
.spread(function(resultModel1, resultModel2, resultModel3) {

});

如果您需要知道的是每次更改模型时如何获取模型,我需要有关框架/服务器/代码的更多详细信息。