使用Google Closure Compiler ADVANCED_OPTIMIZATIONS编译Dojo类

时间:2016-07-19 06:22:19

标签: javascript dojo google-closure-compiler

我是Google Closure Compiler的新手。我想混淆我的Dojo类和模块。我有一个启动VehicleCreator类的HTML页面(Acts as Layer)。这个类包括所有的车辆类A,B,C,......这些车辆类调用Helper模块和类中的一些函数,而辅助模块和类也相互调用函数。

HTML

VehicleCreator

  • 车辆

    • A
    • B
    • C
    • D
  • 辅助

    • 模块A
    • 模块B
    • 助手A级
    • 助手B级

我使用define创建了类:

define(["....."],  function (....) {
        var A = declare([Evented], { declaredClass: "A",
         Name :"A Type"
         constructor: function (param1, param2) {   },
         init: function (param1, param2) {  },
         create: function ([params]) { },
         throwEvent: function (p, q) { /*Throws event back to calling HTML */},
        //**    Other internal Functions and Function that also use functions from Module A and Helper Class A
        });
        return A;
    });

和这样的模块:

define(["...."], 
  function(...){
    return {
         getTyres:  function(type) {
          return tyres;
        },


    };
});

在每个类中 create(),throwEvent() init()是所有类共有的函数,并在类外调用。我已阅读https://developers.google.com/closure/compiler/docs/limitations当我编译单个类时,它重命名函数,我无法使用它们。

问题1:如何在不重命名这些函数名的情况下编译类,或者我应该指向编译器索引HTML文件,以便它嗅探这些函数并使它们保持原样?

问题2:有没有办法编译和混淆文件夹中的所有类?

问题3:如何在单个文件中对它们进行模糊处理和连接,以获得更好的加载性能?

对于单个帖子中的多个问题感到抱歉,但这些问题都是相关的。

0 个答案:

没有答案