监控服务进度以更新控制器范围/视图(AWS S3进度)

时间:2016-01-28 16:22:25

标签: angularjs angularjs-scope aws-sdk

我正在工厂内拨打AWS S3呼叫以上传到存储桶。我知道我可以通过以下方式监控上传进度:

.on('httpUploadProgress', function (progress) {

                    console.log(progress.loaded + " of " + progress.total + " bytes");
                });

但是我不知道如何将其反馈到控制器范围,以允许我根据进度更新我的html。我正在尝试提供引导进度条,所以只需要将aria-valuenow设置为控制器范围中的值。这种事情有最好的做法吗?

1 个答案:

答案 0 :(得分:0)

有关信息,我使用的解决方案是 致电

})。on('httpUploadProgress',function(progress){

                scope.$emit('progressEvent', progress);
                if (progress.loaded == progress.total)
                    toastr.success("Success, " + progrss.total + " bytes uploaded");
            });

回调

var progressEvent = $scope.$on('progressEvent', function (event, data) {
    if (data.total!=0)
        $scope.uploadProgress = (data.loaded * 100 )/ data.total;
});

$scope.$on('$destroy', progressEvent);