如何防止“ gulp-uglify”移动我的全局变量



我正在使用Gulp-uglify和我的Gulp设置来模仿生产环境的JS代码。

我有这样的代码

var test = 1;
function getTest(myTest)
{
   if(!myTest) {
      return test;
   }
  return myTest;
}

但是,当我运行吞咽时,输出变为(我保持清洁以确保可读性(

function getTest(myTest)
{
   if(!myTest) {
      return test;
   }
  return myTest;
}
var test = 1;

如何防止gulp-uglify更改顺序或全局变量。

我首先加入文件,然后uglify。

我尝试将以下对象传递到uglify,但仍在转移订单。

uglify({ mangle: false })
uglify({ mangle: { reserved: ['test'] } })

这是依赖关系

的列表
  "license": "ISC",
  "devDependencies": {
    "gulp": "^3.9.1",
    "gulp-autoprefixer": "^3.1.1",
    "gulp-concat": "^2.6.0",
    "gulp-debug": "^2.1.2",
    "gulp-ignore": "^2.0.1",
    "gulp-minify-css": "^1.2.4",
    "gulp-sass": "^2.3.2",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-uglify": "^2.0.0",
    "gulp-util": "^3.0.7"
  }

这是我的Gulp任务

gulp.task('compileJs', function () {
        gulp.src(jsFiles['final'])
               .pipe(sourcemaps.init())
               //only uglify if gulp is ran with '--type production'
               .pipe(isProduction() ? uglify() : gutil.noop())
               .pipe(concat('final.js'))
               .pipe(sourcemaps.write())
               .pipe(gulp.dest('./Public/Js'));
});

hoist_funs选项设置为false

.pipe(uglify({
    compress: {
        hoist_funs: false
    }
})

相关内容

  • 没有找到相关文章

最新更新