有些时候需要前端获取文件的MD5,文件越大越卡,有点影响体验。
前提是需要spark-md5
这个库,使用npm安装
npm install spark-md5
然后直接使用
import SparkMD5 from 'spark-md5';
export function getFileMd5(file){ //获取文件MD5
return new Promise((resolve,reject)=>{
const fileReader = new FileReader();
const spark = new SparkMD5.ArrayBuffer();
fileReader.readAsArrayBuffer(file);
fileReader.onload = function(e){
spark.append(e.target.result);
let md5 = spark.end();
resolve(md5);
};
fileReader.onerror = function (e) {
reject(e);
};
});
}
直接生成一个promise
对象,不会有前端不会调用promise
吧。