接收一个项目,由于目录结构的问题,每次编译完成后就需要去修改编译后的 HTML 文件中引用的其它文件的路径。
所以想在编译完成后使用 node 来操作文件修改路径。
然后在 webpack 官网找到了 ProgressPlugin 插件,使用方法:
new webpack.ProgressPlugin(function handler(percentage, msg) { if (percentage==0) { console.log('开始编译'); } if (percentage==1) { console.log('结束编译'); fs.readFile(DIST_PATH + '/index.html', 'utf-8', function(err, data) { if (err) { throw new Error('读取编译译后的 HTML 文件失败...'); } const newData = data.replace(/src//g, ''); fs.writeFile(DIST_PATH + '/index.html', newData, function(err) { if (err) { throw new Error('修改编译后的 HTML 文件失败...'); } }); }); } })
编译过程中 percentage 会从0变到1,编程1的时候执行自己的代码就行。