【发布时间】:2021-11-19 15:10:05
【问题描述】:
在沙盒应用程序上工作以学习 angular.js 我在代码中的几个地方遇到了以下模式。我发现自己不得不循环查询 mongoDB。据我了解,每个调用都发生在它自己的异步任务中。我如何知道所有任务何时完成?
例如,我有一个 states 数组。通常我需要为每个状态将 someProperty 设置为 someNewValue。一旦所有状态都更新了,我想调用 someFunction()。
for (var i = 0; i < $scope.states.length; i++) {
$scope.states[i].someProperty = someNewValue;
$scope.states[i].$update({stateId: $scope.states[i].id}, function() {
someFunction();
});
}
目前,我能想到的唯一方法是在每次 update 成功时调用 someFunction()。我知道必须有一种更聪明、更好的方法来做到这一点。
你的方法是什么?
【问题讨论】:
-
我之前回答过类似的问题stackoverflow.com/questions/20144132/…
标签: javascript mongodb angularjs asynchronous callback