你好傢伙我在AngularJS中使用REST在確認按鈕中調用此函數。保存沒問題,問題發生在成功或錯誤消息中。如果成功執行循環,它應該只顯示一條成功消息,或者不止一次顯示任何錯誤的錯誤消息。如果發生錯誤,我使用了一個標誌isError,但是不管我做什麼,「if(isError == false){」總是在循環結束前執行。只顯示一條消息後用promise保證。然後AngularJS
$scope.confirm = function() {
var isError = false;
var i=0;
$scope.displayedmodalcollection.forEach(function(item) {
i++;
delete item.added;
result = DataBase.update({
id: item._id,
endpoint: item._type
}, item._source).$promise.then(function(response) {
}, function(err) {
isError = true;
if (err.status === 500) {
ngToast.create({
className: 'warning',
content: String.format('Any message.', item._id)
});
}
else if (err.status === 404) {
ngToast.create({
className: 'danger',
content: '404 - other message'
});
} else {
ngToast.create({
className: 'danger',
content: 'Error'
});
}
});
});
if (isError == false){
ngToast.create({
className: 'success',
content: 'Success'
});
}
};
有沒有人有建議呢? 感謝
這並不確保成功敬酒發生在年底的循環雖然。 –
@JeremyJackson啊對..我沒有注意到循環 – charlietfl