角度承诺连续链接

时间:2015-12-28 05:59:00

标签: angularjs azure-storage angular-promise ng-file-upload

我正在使用角度上传将文件上传到Azure存储。

 var filePath = [];
        Upload.upload({
            url: '/uploadFile',
            data: { file: $scope.selectedFile }
        }).then(function (resp) {
            //resp.data contains URL returned from upload
            filePath.push(resp.data);
        })

我需要执行3次文件上传,这需要以顺序方式执行,例如:

upload [file 1], get [file 1] URL, 
upload [file 2], get [file 2] URL, 
upload [file 3], get [file 3] URL

file2需要等待file1在启动之前完成, 和file3需要等待file2在启动之前完成,

我如何使用promises来确保我以顺序模式获取文件URL?

例如:filePath [file1URL,file2URL,file3URL]

1 个答案:

答案 0 :(得分:0)

你可以做到 var filePath = []; Upload.upload({ url: '/uploadFile', data: { file: $scope.selectedFile1 } }).then(function (resp) { filePath.push(resp.data); Upload.upload({ url: '/uploadFile', data: { file: $scope.selectedFile2 } }).then(function (resp) { filePath.push(resp.data); Upload.upload({... }) }) 确保在上传上一个文件后上传。