3

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

在此处输入图像描述

这是我的 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'
    }
}

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

4

2 回答 2

4

我已经想通了:

uglify: {
    options: {                  
        mangle: {
            toplevel: true
       }
    }
}
于 2017-05-19T15:18:06.243 回答
1

您必须设置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'
    }
}

检查文档以查看另一个示例。

于 2015-03-17T12:09:55.960 回答