【问题标题】:grunt uglify not distorting variable namesgrunt uglify 不会扭曲变量名
【发布时间】:2015-03-17 09:58:45
【问题描述】:

我正在使用 grunt uglify,它似乎没有修改变量名。我的“God”对象被称为“Porsche”,它保持它及其所有功能的可读性,如您在此处看到的:

这是我的 Gruntfile 配置:

uglify: {
    options: {
        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
        mangle: {
            except: ['jQuery', 'jquery']
        }
    },
    build: {
        src: [ 
            'assets/js/**/*.js'
        ],
        dest: 'assets/js/prod/all.min.js'
    }
}

我希望它完全破坏所有内容,节省函数名称的字节数。是不是我做错了什么?

【问题讨论】:

    标签: gruntjs uglifyjs grunt-contrib-uglify


    【解决方案1】:

    我想通了:

    uglify: {
        options: {                  
            mangle: {
                toplevel: true
           }
        }
    }
    

    【讨论】:

      【解决方案2】:

      您必须设置 mangle: false 以防止更改您的变量和函数名称:

      uglify: {
          options: {
              banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
              mangle: false
          },
          build: {
              src: [ 
                  'assets/js/**/*.js'
              ],
              dest: 'assets/js/prod/all.min.js'
          }
      }
      

      查看documentation 以查看另一个示例。

      【讨论】:

      • 感谢您的回答,尽管我希望 uglify 破坏我所有的变量名称(使它们更短/不可读)。它似乎没有这样做..
      • 他想要 MANGLE,而不是阻止。我遇到了同样的问题,我的变量名保持可读性。
      • 我无法解决 Mick,如果可以的话.. 请告诉我!也将它作为答案提交,我会标记它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-23
      • 2016-07-05
      相关资源
      最近更新 更多