如何在ADVANCED_OPTIMIZATIONS的闭包编译器中导出公共类方法
How to export public class methods in Closure Compiler in ADVANCED_OPTIMIZATIONS?
我正在使用受John Resig启发的JavaScript继承,我的库代码如下所示:
var Person = Class.extend({
/** @private */
_dancing: null,
/** @private */
_init: function(isDancing){
this._dancing = isDancing;
},
/** @public */
dance: function(){
return this._dancing;
}
});
var obj = new Person();
obj.dance();
仅破坏那些以下划线开头的类方法并将所有公共方法保存在ADVANCED_OPTIMIZATIONS中的最佳方法是什么?
我需要获得以下输出:
var a = Class.extend({a:null, b:function(b) {
this.a = b;
}, dance:function() {
return this.a;
}});
new a;
a.dance();
执行此操作
的"最简单"方法是为编译器创建自定义编码约定(您必须修改编译器),并将"export"约定更改为不以"_"开头的任何内容。
看:
http://closure-compiler.googlecode.com/svn/trunk/src/com/google/javascript/jscomp/GoogleCodingConvention.java
及其"导出"方法。
相关文章:
- 使构造函数参数具有ES6类方法的特权
- 可以“;超级“;可以在子类的方法内部使用,在不直接引用的情况下调用相应的超类方法
- Javascript中的类方法
- 在 Array.map() 中调用类方法
- 从类方法中的 ajax post 函数回调函数更改 javascript 类属性
- 类方法中的上下文作为变量
- 如何将类方法设置为等于多个函数?-Javascript
- 将类方法绑定到类外绑定的事件处理程序内的AJAX成功回调
- Node.JS:类方法作为回调
- 如何从将在html页面中使用的java脚本中调用java类方法
- 在类方法中使用React.js静态
- 在不使用@syntax的情况下修饰ES6类方法
- 如何使用jQuery通过ajax调用php类方法,但不需要任何php处理程序文件
- 从常规ES6类方法中调用静态方法
- crypto-js如何隐藏类方法
- 当使用Q/promises/异步函数时,如何将一个值从一个类方法返回到另一个类
- 使用javascript创建自己的隐藏类方法
- javascript ES6类/方法范围
- 使用 .call/.apply 隐藏类方法
- 如何在ADVANCED_OPTIMIZATIONS的闭包编译器中导出公共类方法