Closure Compiler:重命名变量及其属性
Closure Compiler: renaming of variable and its properties
我正在为我的项目使用闭包编译器。
我的一个项目文件有这样的声明:
var data = window.somedata || {};
文件 returns 此 object
正在被其他文件使用。 Closure编译器在使用时重命名此数据的所有属性object
(在高级模式下)。
如何告诉编译器不要重命名与此变量相关的任何 属性?
您可以通过为每个 属性 访问使用引号来防止重命名:
console.log(data['myprop'])
或者通过使用 externs。外部是定义类型的单独文件。
外部
/** @typedef {{prop1: string, prop2: boolean}} */
var FileObj;
来源
var data = window.somedata || /** @type {FileObj} */ ({});
More about writing externs
我正在为我的项目使用闭包编译器。
我的一个项目文件有这样的声明:
var data = window.somedata || {};
文件 returns 此 object
正在被其他文件使用。 Closure编译器在使用时重命名此数据的所有属性object
(在高级模式下)。
如何告诉编译器不要重命名与此变量相关的任何 属性?
您可以通过为每个 属性 访问使用引号来防止重命名:
console.log(data['myprop'])
或者通过使用 externs。外部是定义类型的单独文件。
外部
/** @typedef {{prop1: string, prop2: boolean}} */
var FileObj;
来源
var data = window.somedata || /** @type {FileObj} */ ({});
More about writing externs