高级 - 多进程打包以及配置css和js压缩(内容少时打包速度更慢,但体积庞大时就有明显的效果)

// 安装
npm i thread-loader -D


// webpack配置
const os = require("os");
const threads = os.cpus().length; // cpu数
const TerserWebpackPlugin = require("terser-webpack-plugin");

module.eports = {
    module: {
        rules: [
            {
                test: /\.js$/,
                use: [
                    {
                        loader: "thread-loader", // 开启多进程
                        options: {
                            works: threads, // 进程数量
                        }
                    },
                    {
                        loader: "babel-loader",
                        options: {
                            cacheDirectory: true,
                            // ...
                        }
                    }
                ]
            }
        ]
    },

    plugins: [
        new ESLintPlugin({
            // ...
            threads, // 开启ESLint多进程
        })
    ],

    // webpack5 压缩习惯放在这里
    optimization: {
        // 压缩的操作
        minimizer: [
            // 压缩css
            new CssMinimizerPlugin(),

            // 压缩js
            new TerserWebpackPlugin({
                parallel: threads // 开启多进程和设置进程数量
            })
        ]
    }
}







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值