javascript – ng-flow以编程方式上传

前端之家收集整理的这篇文章主要介绍了javascript – ng-flow以编程方式上传前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在使用ng-flow来执行文件上传.看来,选择文件的默认操作是立即上传.我想覆盖这一点,以便文件被选中,只有按钮点击上传.也许我在误导文档,但到目前为止我还有以下几点:
<div flow-init="{target: '/upload'}"
     flow-files-submitted="$flow.upload()"
     flow-file-success="$file.msg = $message">

  <input type="file" flow-btn/>
  Input OR Other element as upload button
  <span class="btn" flow-btn>Upload File</span>

  <table>
    <tr ng-repeat="file in $flow.files">
        <td>{{$index+1}}</td>
        <td>{{file.name}}</td>
        <td>{{file.msg}}</td>
    </tr>
  </table>
</div>

这似乎正常工作,我可以看到网络请求出来.我找到了flow.js upload file on click,并尝试按照建议的答案,但是$flow在各自的功能中是未定义的.

那么,如何以编程方式使用ng-flow上传文件

解决方法

首先,当用户选择文件(误导名称)时,会触发流文件提交的事件.因此,当您为其分配$flow.upload()时,您可以在选择文件后立即上传.

第二件事是在控制器中获取$flow对象.我想到了两种方式:

A.按照说明,你必须使用flow-name属性

<div flow-init flow-name="obj.flow">

然后,您可以参考$scope.obj.flow属性中的$flow,您可以在控制器中的任何位置使用$scope.obj.flow.upload()方法.

B.将您的“上传”按钮放在流指令块(作为具有flow-init属性的元素的后代),并使用指令范围的$flow属性作为ng-click中的参数,例如:

<button type="button" ng-click="myUploadMedhot($flow)">Upload</button>

并在myUploadMethod(param)里面调用param.upload().

原文链接:https://www.f2er.com/js/151755.html

猜你在找的JavaScript相关文章