带有AngularJS的<input type ="file">中的条件"多个"属性

Ton*_*ada 8 javascript angularjs angularjs-directive

我需要一个上传表单字段,可能允许或不允许用户选择多个文件.

我知道我可以这样做:

<input type="file" multiple ng-if="allow_multiple">
<input type="file" ng-if="!allow_multiple">
Run Code Online (Sandbox Code Playgroud)

但是,我们知道这并不理想.

我试过了

<input type="file" ng-multiple="allow_multiple">
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

似乎AngularJS 没有这样的ngMultiple指令,但无论如何每个人都在使用它(或者我错过了什么?)

无论如何,实现这一目标的最佳方法是什么?

编辑:从目前为止的答案来看,似乎没有办法做到这一点.我在他们的跟踪器上打开了这个问题,让我们看看我们得到了什么:-) https://github.com/angular/angular.js/issues/7714

Ali*_*avi 7

我因 Angular 2 的相同问题来到此页面

最后固定如下:

<input type="file" 
    [accept]="extAccepts" 
    [multiple]="(maxFiles > 1)" />
Run Code Online (Sandbox Code Playgroud)

注意:文件类型 (extAccepts) 和 maxFiles 都从用户的 @input() 形式读取。

希望它对某人有帮助!


Ras*_*mus 0

我在移动设备上,抱歉回答简短。

我将隐藏两种不同的文件输入,一种具有多个属性,一种不具有多个属性。您可以使用 ng-if 指令来实现这一点。

编辑:我很抱歉,似乎你不想这样做,即使它是完全有效的。您可以为其编写自己的指令,但是,它非常简单。