optimization 用于自定义 webpack 的内置优化配置,一般用于生产模式提升性能,常用配置项如下:

    • minimize:是否需要压缩 bundle;
    • minimizer:配置压缩工具,如 TerserPlugin、OptimizeCSSAssetsPlugin;
    • splitChunks:拆分 bundle;
    • runtimeChunk:是否需要将所有生成 chunk 之间共享的运行时文件拆分出来。
    1. module.exports = {
    2. // webpack的优化
    3. optimization: {
    4. // minimize 是否需要压缩 bundle;
    5. minimizer: [
    6. // css分离
    7. new CssMinimizerPlugin(),
    8. ],
    9. // splitChunks 拆分 bundle;
    10. splitChunks: {
    11. chunks: 'all',
    12. // 重复打包问题
    13. cacheGroups:{
    14. vendors:{
    15. //node_modules里的代码
    16. test: /[\\/]node_modules[\\/]/,
    17. chunks: "all",
    18. //chunks name
    19. name: 'vendors',
    20. //优先级
    21. priority: 10,
    22. enforce: true
    23. }
    24. }
    25. },
    26. },
    27. }