angular - 为什么在验证文件类型时出现错误?
问题描述
我想捕获具有类型的文件image or video
。但根据我的情况,我无法理解为什么即使是正确的文件类型也会引发错误。下面是我的代码:
app.component.ts
startUpload(event: FileList)
{
const file = event.item(0);
if((file.type.split('/')[0] !== 'video') || (file.type.split('/')[0] !== 'image'))
{
alert(file.type.split('/')[0]);
return;
}
}
上传视频/图像文件时,它分别在警报框中显示视频/图像。请建议我在哪里需要更改。
解决方案
让我向您介绍德摩根定律。简单地说,它说明了
- 非(A 或 B)= 非 A 非 B
- 非(A 和 B)= 非 A 或非 B
因此,在您的情况下,您需要测试文件类型是否既不是'video'
也不是'image'
。所以你可以做
const fileType = file.type.split('/')[0];
if((fileType !== 'video') && (fileType !== 'image')) {
alert(fileType);
return;
}
或者
const fileType = file.type.split('/')[0];
if(!((fileType === 'video') || (fileType === 'image'))) {
alert(fileType);
return;
}
推荐阅读
- json - Marshal map[string] interface{} 但带有标签
- java - java - 如何使用Java中的Jbutton将双精度值传递到文本字段中?
- javascript - setInterval 一直在做错误的 if 语句
- javascript - 如何在打字稿中总结对象的属性?
- javascript - 修复 Nuxt.Js 项目中的“experimantalDecorator 错误”,尽管我已修复“experimantalDecorator:true”
- javascript - JavaScript 按天显示盈亏
- python - 嵌套列表到表python
- angular - Liferay js bundler - 未删除未使用的节点模块
- arrays - 数组组合
- django - 如何向嵌套序列化程序添加默认值?