grunt uglify 不扭曲变量名
grunt uglify not distorting variable names
我正在使用 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'
}
}
我希望它能完全破坏一切,节省函数名称的字节数。我做错了什么吗?
您必须设置 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: {
options: {
mangle: {
toplevel: true
}
}
}
我正在使用 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'
}
}
我希望它能完全破坏一切,节省函数名称的字节数。我做错了什么吗?
您必须设置 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: {
options: {
mangle: {
toplevel: true
}
}
}