performance - Html-Webpack-Plugin 在多个 pug 文件上非常慢

我有一个项目在我的开发过程中使用 webpack 作为 bundler 和 webpack-dev-server。我使用 Html-webpack-plugin 将我的 30 个 pug 文件编译成 html 但是当与 webpack-dev-server 一起使用时,重新编译时间很长,可能需要 500 万。似乎 webpack 编译了我所有的哈巴狗文件,而不是只编译我更改过的文件。

这是一个关于我如何生成 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)
    ]

最佳答案

正如我从 this discussion 推断的那样, html-webpack-pluginv4.0.0 中进行了一些显着的多入口性能修复,尽管它仍处于测试阶段。至少更新到它修复了我的性能问题,热重载重新编译甚至未更改的文件。

因此可能将 package.json 中的版本更改为:

"html-webpack-plugin": "^4.0.0-beta.11",

其次是:

npm install

应该可以解决您的问题。

https://stackoverflow.com/questions/54231411/

相关文章:

azure - 确定特定 SessionId 的 Azure 服务总线队列上有多少消息

mongodb - 蒙哥错误: cannot nest $ under $in

javascript - Webpack Import Code Splitting 渲染

ios - 为 App Store 准备不同分辨率的 App Preview 视频

laravel - 错误 "Installation failed, reverting ./com

javascript - typescript 在不同类型的数组中查找

sql - Presto SQL 窗口聚合回顾 x 小时/分钟/秒

vb.net - 按列 ("TagIndex = 5"搜索 dgv 列)

python - 如何读取 main_file.exe 中的 data.txt 而不将它们保存在 p

amazon-web-services - AWS Glue - 从现有笔记本服务器访问新的开发端点