我编写了脚本代码,并使用closure-util进行了编译。 但是,我无法访问实例化对象的子对象。 如何修复或编写代码? 我在下面包含了我的代码...
main.js
goog.provide('org');
goog.provide('org.com');
/** @constructor */
org.com = function(){
this.name = "com";
console.log("created org.com");
}
/** @constructor */
org.com.init = function() {
console.log("org.com.init!!");
var obj = new org.com();
obj.init();
return obj
};
org.com.prototype.init = function(){
console.log("org.com.prototype.init");
try {
this.biz1 = new org.com.biz1;
} catch (e$1) {
this.biz1 = undefined;
}
if (this.biz1 != undefined) {
console.log("call biz1.prototype.init...");
this.biz1.init(this);//
}
}
/** @constructor */
org.com.biz1 = function(){
this.name = "biz1";
console.log("org.com.biz1");
}
org.com.biz1.prototype.init = function(parent){
console.log("org.com.biz1.prototype.init");
}
goog.exportSymbol('org.com',org.com);
goog.exportSymbol('org.com.init',org.com.init);
goog.exportSymbol('org.com.biz1',org.com.biz1);
goog.exportProperty(org.com.prototype,'init',org.com.prototype.init);
goog.exportProperty(org.com.biz1.prototype,'init',org.com.biz1.prototype.init);
config.json
“ output_wrapper”:“(function(){%output%})();”
index.html(Chrome调试控制台)
> org
{com: ƒ}
--com: ƒ of()
----biz1: ƒ pf()
----init: ƒ ()
这没关系!我所期望的。
> var obj = new org.com.init()
> obj
of {name: "com", a: pf}
--a: pf {name: "biz1"}
--name: "com"
of -> org.com(我希望使用'com'而不是'of')
a -> org.com.biz1(我希望使用“ biz1”代替“ a”)
请问如何解决(或编写代码)呢?