javascript – 如何防止Closure Compiler重命名为“true”,“false”和“null”

Google Closure Compiler重命名代码中的所有“true”,“false”和“null”出现;
var s = true,x = null,V = false;

而是使用这些短线;在诸如此类的条件下;

if (someVariable == s)

现在; Google Analytics代码定义了自己的“s”变量;覆盖值“true”;正如你所看到的,这会导致很多问题.

我不想改变GA代码;我只是希望Closure Compiler退出重命名true等等.Externs不起作用.

你知道有什么方法可以做到这一点吗?

解决方法

事实证明,可以阻止Google Closure Compiler通过名为“output_wrapper”的参数将全局定义(函数和/或变量)打印到命令行代码中,例如;
java -jar compiler.jar --compilation_level ADVANCED_OPTIMIZATIONS --output_wrapper "(function(){%output%})();" --js input.js --js_output_file output.js

这样,它不会与全局变量冲突,并在匿名函数包装器中打印所有代码.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...