Google Closure JSDoc Annotation

时间:2013-02-14 17:44:12

标签: google-closure

是否可以使用JSDoc注释在子类中创建超类的受保护实例方法?更具体地说,我有一个继承自goog.ui.Control的类。 goog.ui.Control有一个受保护的方法setElementInternal。我想在子类中公开其访问修饰符以从另一个类访问此方法。

2 个答案:

答案 0 :(得分:0)

不直接。

您需要在继承类中添加一个新方法,该方法是公共的,调用@protected方法。这样的事情应该有效。

/**
 * My public wrapper around a protected method
 * @param {Element} element Root element for this component
 */
my.namespace.Control.prototype.setElement = function(element) {
    this.setElementInternal(element);
}

答案 1 :(得分:0)

答案如下所示。

“foo.js”

goog.provide( '富');

...

goog.inherits(FOO,goog.ui.Control);

...

/ ** * @param {Element}元素 * /

foo.prototype.setElementInternalEncap = function(element){

goog.bind(this.setElementInternal,this,element);

};

“bar.js”

goog.provide( '巴');

goog.require( '富');

...

fooReference.setElementInternalEncap(元件);