首页 > 解决方案 > 如何在 $scope.$on 中停止方法执行,直到上传结束

问题描述

我正在尝试在表单保存单击上上传一批文件。该方法应该等到文件上传结束后再进行保存。现在,该方法不会在文件上传之前等待并保存。

这是我的代码

$scope.$on("formSubmitting", function (ev, args) {
        $scope.uploadPendingFiles();
    });

上传挂起文件();正在做 XMLHttpRequest 发送。

知道怎么做吗?

编辑

按照建议,更多信息:

在表单上,​​我可以选择一些要上传的文件,但是只有在用户单击保存按钮时才应该开始上传。父控制器在保存单击时广播表单提交,我想显示加载 gif,直到所有文件都上传。

标签: javascriptangularjsxmlhttprequestumbraco

解决方案


@TestzWCh,您似乎需要使用承诺。上传方法(带有 http-request)必须返回$q.defer().promise,您将像这样使用:

FileService.uploadingMethodPromise().then(function(result){ // do your logic with result -- enable Save button, or send saving request.. })

我能为你的任务做些什么吗?


推荐阅读