![](/img/trans.png)
[英]How to prevent Closure Compiler from renaming “true”, “false” and “null”
[英]Preventing closure compiler from renaming certain variables
我有一个带有全局对象的javascript文件,不能重命名(来自Google Analytics异步跟踪器的_gat
)。
Google Closure编译器不得重命名此对象,因为Google Analytics会查找具有此特定名称的变量。
我查看了提到的Javascript文档符号: http : //code.google.com/closure/compiler/docs/js-for-compiler.html - 但是,我找不到有关“保护”的任何内容变量。
无论我使用简单编码还是高级编译,问题都存在。
如何确保不重命名_gat
变量?
使用Closure Compiler Web应用程序,您可以设置js_externs
。 有关更多示例,请参阅高级编译和外部 。
// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @output_file_name default.js
// @js_externs _gat
// ==/ClosureCompiler==
使用base.js中的goog.exportSymbol函数。 文档在这里: http : //closure-library.googlecode.com/svn/docs/closure_goog_base.js.html
用法就像
goog.exportSymbol("_gat", _gat)
请参阅http://closuretools.blogspot.com/2011/01/property-by-any-other-name-part-1.html关于“所有未引用的”部分
将某些变量置于''>>>'bob'中可防止它们被编译器重命名
如果它未被声明为您编译的代码的一部分,则外部声明是合适的: http : //code.google.com/closure/compiler/docs/api-tutorial3.html#externs
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.