没遇到之前从来没想到会被一个input=‘file’卡住。。
测试的时候发现部分Android手机或者系统不会返回type,这是在pc端没有出现过的事情;于是只能对文件进行二进制流判断文件的类型。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
checkType (file) { let fileReader = new FileReader() fileReader.onload = function () { // console.log(this.result.byteLength); let type = this.result.slice(0, 16) let view = new Uint8Array(type); let arr = [] view.forEach(item => { arr.push(item.toString(16)); }); console.log(arr) } fileReader.readAsArrayBuffer(file); }, |
当然最后我还是直接通过文件名去判断了,我太难了。。
参考地址:https://segmentfault.com/q/1010000009224378