1. {
    2. test: /\.js$/,
    3. exclude: /node_modules/,
    4. use: [
    5. /*
    6. 开启多进程打包。
    7. 进程启动大概为 600ms,进程通信也有开销。只有工作消耗时间比较长,才需要多进程打包
    8. */
    9. {
    10. loader: 'thread-loader', options: {
    11. workers: 2 // 进程 2 个
    12. }
    13. },
    14. {
    15. loader: 'babel-loader', options: {
    16. presets: [ [
    17. '@babel/preset-env',
    18. {
    19. useBuiltIns: 'usage',
    20. corejs: { version: 3 },
    21. targets: {
    22. chrome: '60',
    23. firefox: '50'
    24. }
    25. }
    26. ]
    27. ],
    28. // 开启 babel 缓存
    29. // 第二次构建时,会读取之前的缓存
    30. cacheDirectory: true
    31. }
    32. }
    33. ]
    34. },