我正在尝试转换一组js文件。由于babel默认在严格模式下运行,因此每当发生冲突(例如使用delete关键字)时,它都会输出语法错误。我正在寻找的解决方案是不知何故忽略了这种严格模式。 请注意,我正在使用babel cli进行上述操作,并且没有项目设置。
编辑:我知道删除在严格模式下的工作方式。问题是使用babel在非严格模式下运行,这样它不会产生错误,因为默认情况下它会解析文件作为ES6模块。
答案 0 :(得分:1)
我想出了解决方案。默认情况下,Babel将文件解析为ES6模块,这在默认情况下是严格的。如果添加-source-type脚本(如果使用的是cli),我正在编写一个简单的命令来转换单个js文件,该文件将忽略严格模式,以防将来有人卡住此命令。一个主要注意事项是您需要升级到最新的babel 7才能使其工作。
babel test.js --presets=@babel/env --source-type script --out-file test_new.js