每次前端打包生成的dist文件,可能会有很多的文件,对于未修改的情况,多次build后,会出现打包的文件名(hash值)变化的问题(参考vue官网history与hash路由的区别:https://router.vuejs.org/zh/guide/essentials/history-mode.html),,无法判断最终导致的副作用,这个时候就需要去进行文件的对比。作为一个纯前端开发,最容易想到的就是通过node进行处理,下面是我总结的一个方法,直接贴图说明:
const fs = require('fs');
const _ = require('lodash');
let files1 = [];
let files2 = [];
fs.readdir('./dist/assets',(err,files)=>{
files1=files;
fs.readdir('./dist copy/assets',(err,files)=>{
files2 = files;
console.log(files2);
let result = _.difference(files1,files2);
console.log(result);
result = _.sortBy(result,f=>f);
_.each(result,r=>console.log(r));
});
});