我指的是
link,用于使用AngularJS创建文件上传功能.
当我单击“选择文件”时,不止一次,当对话框未打开时,甚至一次,在选择文件后,当对话框第一次打开时,我仍然可以看到多个对话框一个接一个地开放.
如何解决这个问题?
让我知道.
解决方法
这是因为您在按钮中使用ng-model.您必须编写自己的自定义指令,而不是ng-model.对于文件输入,请避免使用按钮.更好的方法是使用文件输入标记,如下所示:
Angularjs:
myApp.directive('fileModel',['$parse',function ($parse) { return { restrict: 'A',link: function (scope,element,attrs) { var model = $parse(attrs.fileModel); var modelSetter = model.assign; element.bind('change',function () { scope.$apply(function () { modelSetter(scope,element[0].files[0]); }); }); } } }]);
HTML:
<input id="chooseFile" type="file" file-model="file" name="Attachment" multiple/>
希望这会成功.