是否可以使用 JSDoc 注释在子类中公开超类的受保护实例方法?更具体地说,我有一个继承自 goog.ui.Control 的类。goog.ui.Control 有一个受保护的方法 setElementInternal。我想在子类中公开它的访问修饰符,以便从另一个类访问这个方法。
问问题
342 次
2 回答
0
答案如下所示。
“foo.js”
goog.provide('foo');
...
goog.inherits(foo,goog.ui.Control);
...
/** * @param {Element} 元素 */
foo.prototype.setElementInternalEncap = 函数(元素){
goog.bind(this.setElementInternal, this, element);
};
“酒吧.js”
goog.provide('bar');
goog.require('foo');
...
fooReference.setElementInternalEncap(元素);
于 2013-02-16T01:27:23.170 回答
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);
}
于 2013-02-14T21:29:09.020 回答