【发布时间】:2019-11-08 19:55:13
【问题描述】:
我正在尝试限制用户可以上传的文件类型。我只能允许 pdf 和 doc。 我的 HTML 有以下内容
<input #pdfUploadID type="file" id="fileUploadID" formControlName="fileUploadID" (change)="handleFileInput($event.target.files, 'id')" accept=".pdf,.doc">
单独执行此操作仍允许用户更改浏览器弹出窗口中允许的类型,如下所示
所以我有自定义代码,可以在用户上传后检查文件类型,如下所示
if (this.fileToUploadID.type !== 'application/pdf') {
this.isPDFId = false;
} else { this.isPDFId = true; }
我的问题是当我尝试像这样向 if 语句添加更多类型时,我收到以下错误
此条件将始终返回“真”,因为类型 '"application/pdf"' 和 '"application/msword"' 没有重叠。
if ((this.fileToUploadID.type !== 'application/pdf')||(this.fileToUploadID.type !== 'application/msword')) {
console.log("file type: "+this.fileToUploadID.type);
this.isPDFId = false;
} else { this.isPDFId = true; }
有什么我应该添加的想法吗?
【问题讨论】:
-
@mpro 我确实看到了,但它不处理文件类型
-
fileUploadID的类型是什么? -
@mpro 声明为
fileToUploadID: File = null -
能否提供
File接口/类的详细信息?
标签: javascript angular primeng