【问题标题】:Disable/Ignore Babel strict mode for transpiling javascript files禁用/忽略用于转换 javascript 文件的 Babel 严格模式
【发布时间】:2018-08-31 08:15:47
【问题描述】:
我正在尝试转换一组 js 文件。由于默认情况下 babel 在严格模式下运行,因此只要存在冲突(例如使用 delete 关键字)就会输出语法错误。我正在寻找的解决方案是不知何故忽略了这种严格模式。
请注意,我正在使用 babel cli 进行上述操作,并且没有项目设置。
编辑:我知道 delete 如何在严格模式下工作。问题是使用 babel 在非严格模式下操作,这样它就不会给出错误,因为默认情况下它会解析文件作为 ES6 模块。
【问题讨论】:
标签:
javascript
npm
babeljs
【解决方案1】:
我已经找到解决方案了。默认情况下,Babel 将文件解析为 ES6 模块,默认情况下是严格的。如果我们添加 --source-type 脚本,以防使用 cli,然后它将起作用。我正在编写一个简单的命令来转换单个 js 文件,该文件将忽略严格模式,以防将来有人卡在此问题上。一个关键注意事项是您需要升级到最新的 babel 7 才能使其工作。
babel test.js --presets=@babel/env --source-type script --out-file test_new.js