【发布时间】:2016-07-05 19:02:34
【问题描述】:
我一直在寻找一些.babelrc 选项来从转译代码中删除 cmets,但我没有任何运气。我试过这个:
{
"comments": false
}
还有
{
"options": {
"comments": false
}
}
两者都不起作用。我没有想法,也无法在任何地方找到任何像样的文档。
【问题讨论】:
标签: javascript babeljs
我一直在寻找一些.babelrc 选项来从转译代码中删除 cmets,但我没有任何运气。我试过这个:
{
"comments": false
}
还有
{
"options": {
"comments": false
}
}
两者都不起作用。我没有想法,也无法在任何地方找到任何像样的文档。
【问题讨论】:
标签: javascript babeljs
始终建议使用.babelrc:
{
comments: false
}
如果使用babel-cli,您可以使用--no-comments 选项来实现相同的行为。
babel-cli的最新版本包括tests that check for this behaviour to be implemented correctly。
编辑
babel CLI 忽略 .babelrc 中的 cmets 看起来确实存在问题,解决方法是使用 --no-comments 选项。
在你的package.json
"build": "babel ./index.js --out-dir ./dist/index.js --no-comments"
了解 babel-cli 的所有选项
./node_modules/.bin/babel -h
原创
你从哪里运行 babel?咕咕咕?
检查 .babelrc 文件是否位于已转译文件的同一目录或父目录中
来自babeljs.io:
Babel 会在文件的当前目录中寻找 .babelrc 被转译。如果一个不存在,它将向上传播 目录树,直到找到 .babelrc 或 package.json 带有 "babel": {} 散列。
我有一个具有这种结构的项目:
gulpfile.js中的相关任务
gulp.task('babel', () => {
return gulp.src('index.js')
.pipe(babel({
presets: ['es2015']
}))
.pipe(gulp.dest('./dist/'));
});
.babelrc的内容
{
"comments": false
}
已成功移除 cmets。
例如,还要检查您是否没有在 gulpfile 中将 comments 选项设置为 true。
【讨论】:
npm run build 脚本运行 babel,它只是在执行 babel ./src --out-dir ./lib。我尝试将"comments": false 放入.babelrc,但什么也没发生。