gulp常用插件之gulp-uglify使用

UndefineOrNull 2020-01-13

更多gulp常用插件使用请访问:gulp常用插件汇总


gulp-uglify这是一款使用UglifyJS缩小js文件。

更多使用文档请点击访问gulp-uglify工具官网

安装

一键安装不多解释

npm install --save-dev gulp-uglify

使用

var gulp = require('gulp');
var uglify = require('gulp-uglify');
var pipeline = require('readable-stream').pipeline;

gulp.task('compress', function () {
  return pipeline(
        gulp.src('lib/*.js'),
        uglify(),
        gulp.dest('dist')
  );
});

为了帮助正确处理Node流的错误情况,该项目建议使用 pipelinefrom中的readable-stream

Options
支持UglifyJS API中的大多数minify选项。有一些例外:
sourceMap不得设置该选项,因为它将根据您的Gulp配置自动进行配置。请参阅Gulp源地图的文档

Errors
gulp-uglify如果无法缩小特定文件,则发出“错误”事件。该插件导出GulpUglifyError构造函数以进行instanceof检查。它包含以下属性:

  • fileName:要缩小的文件的完整文件路径。
  • cause:原始的UglifyJS错误(如果有)。
    大多数UglifyJS错误消息具有以下属性:
  • message(或msg)
  • fileName
  • line

使用不同的UglifyJS
默认情况下,gulp-uglify使用安装的UglifyJS版本作为依赖项。可以使用“ composer”入口点配置使用其他版本。

var uglifyjs = require('uglify-js'); // 可以是git checkout 
                                     // 或其他模块(例如ES6支持的`uglify-es`)
var composer = require('gulp-uglify/composer');
var pump = require('pump');

var minify = composer(uglifyjs, console);

gulp.task('compress', function (cb) {
  // 与上述相同的选项
  var options = {};

  pump([
      gulp.src('lib/*.js'),
      minify(options),
      gulp.dest('dist')
    ],
    cb
  );
});

相关推荐