shouldPermit
がtrue
になる場合、getModelData
への繰り返し呼び出しを停止します。しかし、以下のコードでは、それぞれnewlySelectedUsers
のコンソールにwhy I got printed forEach newlySelectedUsers
が表示されます。ループ内のサービスコールは、条件が偽であってもループを停止しません。
shouldPermit
が真になると
getModelData
への呼び出しを停止する方法
var shouldPermit = false;
angular.forEach(newlySelectedUsers, function(value, key) {
if(!shouldPermit) {
console.log("why I got printed forEach newlySelectedUsers")
userService.getModelData($scope.$root.test[value].id)
.success(function (data) {
if(lodash.isEmpty(data)) {
shouldPermit = true;
$scope.insertSaving();
}
});
}
});
?
shouldPermitは、データが空の場合にのみtrueに設定する必要があります。だから私たちは問題を解決するための条件の外に置くことはできません。 –