У меня есть проект, который использует webpack в качестве компоновщика и webpack-dev-server во время процесса разработки. Я использую Html-webpack-plugin для компиляции моего файла 30 pug в html, но при использовании с webpack-dev-server время перекомпиляции очень велико, возможно, 5 минут. Кажется, что webpack компилирует весь мой файл pug вместо того, чтобы компилировать только файл, который я изменил.
Вот фрагмент о том, как я генерирую HTML-файл
import HtmlWebpackPlugin from 'html-webpack-plugin';
import path from 'path';
import fs from 'fs';
export const renderHtml = (programs) => {
const fileList = [];
fs.readdirSync(path.join(__dirname, `../programs/${programs}/pug/`)).forEach(file => {
if (/\.pug$/.test(file)) {
const name = `${file}`.replace('.pug', '');
fileList.push({
name,
file
});
}
});
return fileList.map(file => {
return new HtmlWebpackPlugin({
filename: file.name + '.html',
template: path.join(__dirname, `../programs/${programs}/pug/${file.file}`)
});
});
};
export default renderHtml;
И я использую это так в моем файле webpack.config.babel.js
plugins: [
...
new VueLoaderPlugin(),
...renderHtml(programs)
]