如何使用babel-cli从转换后的代码中删除注释

时间:2016-07-05 19:02:35

标签: javascript babeljs

我一直在寻找一些.babelrc选项来删除已编译代码中的评论,但我没有运气。我试过这个:

{
  "comments": false
}

以及

{
  "options": {
    "comments": false
  }
}

并且都不起作用。我没有想法,我无法在任何地方找到任何体面的文档。

1 个答案:

答案 0 :(得分:27)

始终建议使用.babelrc

{
  comments: false
}

如果使用babel-cli,您可以使用--no-comments选项来实现相同的行为。

babel-cli的最新版本包括tests that check for this behaviour to be implemented correctly

修改

看起来像babel CLI忽略.babelrc中的评论的问题,解决方法是使用--no-comments选项。

package.json

"build": "babel ./index.js --out-dir ./dist/index.js --no-comments"

了解babel-cli的所有选项

./node_modules/.bin/babel -h

<强> ORIGINAL

你在哪里经营巴贝尔?吞掉?

检查您是否在文件beign的相同或父目录中有.babelrc文件

来自babeljs.io

  

Babel会在文件的当前目录中查找.babelrc   正在被翻译。如果一个不存在,它将向上移动   目录树,直到找到.babelrc或package.json   用“babel”:{}哈希。

我有一个具有这种结构的项目:

  • DIST
    • index.js
  • .babelrc
  • index.js
  • gulpfile.js
  • node_modules
    • ...

gulpfile.js

中的相关任务
gulp.task('babel', () => {
    return gulp.src('index.js')
        .pipe(babel({
            presets: ['es2015']
        }))
        .pipe(gulp.dest('./dist/'));
});

.babelrc

的内容
{
    "comments": false
}

评论正在成功删除。

另外,请检查您的gulpfile中是否未将comments选项设置为true。