所以我将 terser 与 gulp 一起使用,并尝试了几种组合,但似乎没有什么可以缩小函数名称,这里是一个例子:
function minify() {
return gulp.src('js/**/*.js')
.pipe(gTerser({
keep_fnames: false,
mangle: {
keep_fnames: false,
}
}))
.pipe(gulp.dest(`foo/js/`))
}
Run Code Online (Sandbox Code Playgroud)
这个配置也帮助我实现了我想要的:
.pipe(gTerser({
keep_fnames: false,
mangle: {
properties: {
keep_quoted: true
},
keep_fnames: false,
}
}))
Run Code Online (Sandbox Code Playgroud)
我对你的简洁任务做了一个小测试。使用 mangle (顶级)选项我得到了想要的结果。
mangle option toplevel : toplevel (默认 false) -- 将 true 传递给顶级范围中声明的 mangle 名称。
const gulp = require('gulp');
const gTerser = require('gulp-terser');
function minify() {
return gulp.src('./js/**/*.js')
.pipe(gTerser({
ecma: 6,
keep_fnames: false,
mangle: {
toplevel: true,
},
}))
.pipe(gulp.dest('./foo/js/'));
}
gulp.task('default', minify)
Run Code Online (Sandbox Code Playgroud)
例子:
const minifyMyFunctionName = (num) => {
console.log(num * 2);
};
minifyMyFunctionName(2);
Run Code Online (Sandbox Code Playgroud)
更简洁的结果:
const o=o=>{console.log(2*o)};o(2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3759 次 |
| 最近记录: |