• 配置loader(thread-loader)

      1. npm install --save-dev thread-loader
    • 配置文件: ```javascript const { resolve } = require(‘path’);

    // 定义nodejs环境变量:决定使用browserslist的哪个环境 process.env.NODE_ENV = ‘production’;

    module.exports = { entry: ‘./src/js/index.js’, output: { filename: ‘js/built.[contenthash:10].js’, path: resolve(__dirname, ‘build’) }, module: { rules: [ { // 以下loader只会匹配一个 // 注意:不能有两个配置处理同一种类型文件 oneOf: [ { test: /.js$/, exclude: /node_modules/, use: [ / 开启多进程打包。 进程启动大概为600ms,进程通信也有开销。 只有工作消耗时间比较长,才需要多进程打包 / { loader: ‘thread-loader’, options: { workers: 2 // 进程2个 } }, { loader: ‘babel-loader’, options: { presets: [ [ ‘@babel/preset-env’, { useBuiltIns: ‘usage’, corejs: { version: 3 }, targets: { chrome: ‘60’, firefox: ‘50’ } } ] ], cacheDirectory: true // 开启babel缓存,第二次构建时,会读取之前的缓存 } } ] } ] } ] }, plugins: [

    ], mode: ‘production’, devtool: ‘source-map’ }; ```