1.这是通过element中上传文件后返回的type类型来判断文件类型,比较麻烦,对应rar文件类型为空不好判断
注释的代码是通过(点)后面的字符来判断是否是相同类型文件,这种方式有缺陷,(我是pdf.sss.pdf)这样的文件命名无法判断
const isJPG =
file.type === "application/x-zip-compressed" ||
file.type === "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" ||
file.type === "application/msword" ||
file.type === "application/vnd.openxmlformats-officedocument.wordprocessingml.document" ||
file.type === "application/pdf" ||
file.type === "application/vnd.ms-powerpoint" ||
file.type === "application/vnd.openxmlformats-officedocument.presentationml.presentation" ||
file.type === "application/kswps";
const isSize = file.size / 1024 / 1024;
console.log('ize',file.size / 1024 / 1024 );
if (!extension && !extension1 && !extension2 && !extension3 && !extension4 && !extension5 && !extension6 && !extension7 && !extension8) {
that.$message.error(that.$t('common.uploadMuiFileTypeTip'));
return false;
}
var foo = 'bar';
2.element、这是通过lastIndexOf 获取最后文件名中最后一个点的索引位置, 然后通过substr+1是为取(点)后面所有的后缀(这个方法是比较好的)
const index = file.name.lastIndexOf(".");
const extension = file.name.substr(index+1) === 'zip';
const extension1 =file.name.substr(index+1)=== 'rar';
const extension2 = file.name.substr(index+1)=== 'xlsx';
const extension3 = file.name.substr(index+1) === 'doc';
const extension4 = file.name.substr(index+1) === 'docx';
const extension5 = file.name.substr(index+1) === 'pdf';
const extension6 = file.name.substr(index+1) === 'ppt';
const extension7 = file.name.substr(index+1)=== 'wps';
const extension8= file.name.substr(index+1)=== 'pptx';
const isSize = file.size / 1024 / 1024;
console.log('ize',file.size / 1024 / 1024 );
if (!extension && !extension1 && !extension2 && !extension3 && !extension4 && !extension5 && !extension6 && !extension7 && !extension8) {
that.$message.error(that.$t('common.uploadMuiFileTypeTip'));
return false;
}
var foo = 'bar';