Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在循环中安全地调用基于承诺的AngularJS服务?_Javascript_Angularjs_Angularjs Service - Fatal编程技术网

Javascript 如何在循环中安全地调用基于承诺的AngularJS服务?

Javascript 如何在循环中安全地调用基于承诺的AngularJS服务?,javascript,angularjs,angularjs-service,Javascript,Angularjs,Angularjs Service,我打电话给我的角度服务如下: $scope.testData.length = 10; for (var k = 0; k <= $scope.testData.length; k++) { myTestService.saveData({ Id: $scope.id, Description: $scope.jobdescrtiption, FirstName: $scope.firstname, LastName

我打电话给我的角度服务如下:

$scope.testData.length = 10;
for (var k = 0; k <= $scope.testData.length; k++) { 
    myTestService.saveData({
        Id: $scope.id,
        Description: $scope.jobdescrtiption,
        FirstName: $scope.firstname,
        LastName: $scope.lastname,
        Address: $scope.address,
        Phone: $scope.phone,
        Email: $scope.email                 
    }).then(function (result) {
        if (!result.data.success) {
            myDialogModal(result.data.errorMsg, 'Save error', 'OK', false)
                .result.then(function () {
                    $scope.validationdisabled = false;
                });
        } else {
            $scope.displayMessages('save', true);
        }
    });
}
$scope.testData.length=10;

对于(var k=0;k您是否考虑过从承诺转移到异步/等待?这将简化您的脚本并帮助提高代码的可读性。简单地说:您等待服务上的方法,并在获得响应后继续执行下一个操作。不,我没有,但会看一看。我假设有文档可以阅读e、 但是angularjs 1.x会有文档吗?async/await是ES2017(ES8)引入的本机javascript特性。要使用它,您应该确保AngularJS应用程序的javascript版本支持ES8或更高版本。@MiquelCal async/await的ES6承诺未与AngularJS框架集成。只有在AngularJS执行上下文中应用的操作才能从AngularJS数据绑定、异常处理、属性监视等中受益。W您想做什么?编写的代码将使用相同的数据调用服务10次。这有什么意义?