我有一个大致有这种结构的课程:
function MyClass() {
// constructur stuff
}
MyClass.prototype.myFunc = function () {
// example function
};
MyClass.myStaticFunc = function () {
// example static function
};
我花了一些时间设置闭包编译器注释,最后摆脱了所有警告。而你知道什么,它的尺寸减少了100%。那么我读了关于导出函数的内容,但是window['MyClass'] = MyClass
只会导出构造函数。说实话,我宁愿不单独导出每一种方法。我认为编译器会导出并且不会混淆所有公开可用的方法,而是那些带有@private
注释的方法。
教导闭包编译器执行此操作的最佳方法是什么,而不必单独导出每个方法?
答案 0 :(得分:2)
使用ADVANCED_OPTIMIZATIONS
您必须导出每个公共方法和属性。如果您不希望重命名公共方法和属性,请使用SIMPLE_OPTIMIZATIONS
。
有关详细信息,请参阅我的Which Compilation Level is Right for Me帖子。
答案 1 :(得分:1)
我相信我找到了答案:我可以使用@export
注释方法并使用--generate_exports
运行编译器。但也许某人有更好的方式。