巴别塔失去了代码格式化功能

8

我正在尝试通过gulp集成babel

var babel = require('gulp-babel');
var es6 = require('babel-preset-es2015');
...
return gulp.src('path/to/my/source/file/js')
       .pipe(babel({presets:es6}))
...

当我运行编译任务时,我的代码检查工具 (JSHint) 报告说这一行太长了,而且我缺少了一个换行符。
假设我的源文件如下所示(请注意最后一行是空行):
(function(){
var myApp = angular.module('first-dependence',[
    'another-dependence',
    'and-another-dependence']
}();       
// Empty line here

Babel会将其输出为以下格式:
(function(){
var myApp = angular.module('first-dependence',['another-dependence','and-another-dependence']
}();

对于我来说,他忽略了指令内部的换行并删除了最后一个空行。

是否可能告诉babel保持原有格式,并且只进行编译转换?

敬礼

1个回答

8

你不能。但是你可以尝试。

  • the retainLines option

    .pipe(babel({presets:es6, retainLines:true}))
    
  • or to rely on source maps (see gulp-babel).

但是两者都不能完全保留您当前的空格。


retainLines:true 正是我需要的,以保留我的注释位置。 gulp-beautify 为我处理了其余部分。 - Justin Parks

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接