以这个简单的 gulp 为例进行丑陋化:

gulp.task('scripts', function() {
  // Minify and copy all JavaScript (except vendor scripts)
  return gulp.src(paths.scripts)
    .pipe(uglify())
    .pipe(concat('all.min.js'))
    .pipe(gulp.dest('build/js'));
});

如果您有两个文件:

文件f1.js:
function f1(){
  var hello = 1;
  return hello;
}

文件f2.js:
function f2(){
  return f1();
}
all.min.js中的任务结果为:
function f1(){var n=1;return n}
function f2(){return f1()}

我如何才能丑化这些顶级函数名称,即f1f2?我试过了:

额外丑陋的
return gulp.src(paths.scripts)
    .pipe(uglify())
    .pipe(concat('all.min.js'))
    .pipe(gulp.dest('build/js'))
    .pipe(uglify());

传递mangle选项
return gulp.src(paths.scripts)
    .pipe(uglify({mangle: true}))
    .pipe(concat('all.min.js'))
    .pipe(gulp.dest('build/js'));

传递顶级选项
return gulp.src(paths.scripts)
    .pipe(uglify({toplevel: true}))
    .pipe(concat('all.min.js'))
    .pipe(gulp.dest('build/js'));

但是,这根本没有任何效果。

最佳答案

.pipe(uglify({mangle: {toplevel: true}}))

关于javascript - 用gulp丑化顶级功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24344645/

10-10 00:31