参考代码:
var uglify = require('gulp-uglify');
function keepHeaderComments(node, comment) {
var text = comment.value;
var type = comment.type;
if (type == "comment2") {// multiline comment
return true
}
}
gulp.task('mobile6to5', function() {
return gulp.src('../.js/*.js')
.pipe(uglify({
output:{comments:keepHeaderComments} // 保留多行注释
}))
.on('error', function(err){ // 报错防止中断
console.error(err)
this.emit('end');
})
.pipe(gulp.dest('../js'));
});
1. 报错防止中断
在配置中使用on('error',fn),在fn中打印报错信息,并触发end事件结束报错,从而继续运行server
2. js代码压缩保留作者信息
在uglify(options),中的options.output中设置注释规则fuction,
自定义一个方法,判断如果是多行注释即【type == "comment2"】就返回true,从而保留多行注释。
网友评论