You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel Mix生产构建中关闭代码压缩?

在Laravel Mix生产构建中关闭代码压缩的最佳方案

你的现有配置存在几个无效点:重复调用mix.options导致配置混乱,且uglifyOptions里的minify、minimize等参数并非UglifyJS/Terser的有效配置项;如果使用Laravel Mix 6及以上版本,默认已用TerserPlugin替代UglifyJsPlugin,原有uglify配置完全不会生效。

以下是针对不同Mix版本的最优解决方案:

适用于Laravel Mix 6+版本

let mix = require('laravel-mix');

mix.js('src/js/app.js', 'assets/js/common.js')
   .sass('src/scss/style.scss', '')
   .options({
       processCssUrls: false
   });

if (mix.inProduction()) {
    // 直接关闭所有压缩逻辑
    mix.options({
        minimize: false,
        cssnano: false
    });

    // 若需要保留剔除console功能但不压缩代码,添加如下配置
    mix.override((config) => {
        config.optimization.minimizer.forEach(minimizer => {
            if (minimizer.constructor.name === 'TerserPlugin') {
                minimizer.options.terserOptions = {
                    compress: {
                        drop_console: true,
                        // 关闭所有压缩相关选项
                        collapse_vars: false,
                        reduce_vars: false,
                        booleans: false,
                        loops: false
                    },
                    // 关闭代码混淆
                    mangle: false,
                    // 格式化代码为可读格式
                    format: {
                        beautify: true,
                        comments: false
                    }
                };
            }
        });
    });
}

适用于Laravel Mix 5及以下版本

let mix = require('laravel-mix');

mix.js('src/js/app.js', 'assets/js/common.js')
   .sass('src/scss/style.scss', '')
   .options({
       processCssUrls: false
   });

if (mix.inProduction()) {
    mix.options({
        minimize: false,
        uglify: false,
        cssnano: false
    });
}

关键配置说明

  • minimize: false:核心开关,直接禁用Mix默认的JS/CSS压缩插件
  • cssnano: false:单独关闭CSS压缩,避免版本兼容问题
  • 保留drop_console时,通过mix.override()手动修改Terser配置,仅开启控制台剔除,关闭所有压缩、混淆逻辑并美化代码

内容的提问来源于stack exchange,提问作者Cmaxster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:45:41