当--language_out设置为ECMASCRIPT_2015时,Google Closure编译器会在结果文件中添加“使用严格”

时间:2019-11-03 15:36:29

标签: javascript google-closure-compiler

当--language_out设置为ECMASCRIPT_2015时,Google Closure编译器将“使用严格”添加到结果文件中

由于某些未知的原因,在设置“ --language_out ECMASCRIPT_2015”参数时,程序将强制使用严格模式,并在结果文件的开头添加“使用严格”。

“-jscomp_off es5Strict”都没有任何未记录的参数帮助。看起来在ECMASCRIPT_2015兼容模式下的GCC使用“严格模式”作为默认值。

有人知道如何关闭它吗?

我通过bat-file命令为Java使用了最新的GCC版本:

java -jar %USERPROFILE%\OneDrive\Portable\ClosureCompiler\cc.jar --js %1.%2 --js_output_file %1.min.%2 --language_in ECMASCRIPT_2015 --language_out ECMASCRIPT_2015 --jscomp_off es5Strict

2 个答案:

答案 0 :(得分:0)

现在有一个选项,--emit_use_strict=false

答案 1 :(得分:0)

如果您正在开发和使用 Google Closure Compiler,您可以使用以下代码禁用严格模式

CompilerOptions compilerOptions = new CompilerOptions();
compilerOptions.setEmitUseStrict(false);

List<SourceFile> externs = CommandLineRunner.getDefaultExterns();
compiler.compile(externs, Lists.newArrayList(input), compilerOptions);