1

两个问题:

首先,有人知道如何继承某些文档的一部分吗?专门针对“选项”对象:

 * @param {Object}          opts
 * @param {String}          opts.effect    Transition effect.  fade|slide
 * @param {String}          opts.direction Direction to do the transition, when applicable.  up|down|left|right
 * @param {String|Number}   opts.duration  Transition duration in ms, or one of short|long
 * @param {String|Function} opts.timing    Transition timing function, or one of

基本上,我希望该文档采用多种方法,但我不想将其复制到每种方法中,并且我想要一个共同的地方来更改它。

其次,如果我可以通过某种方式继承文档,我可以扩展它吗?例如我想要:

method foo:
    opts.opt-a // inherited
    opts.opt-b // inherited
    opts.opt-c // inherited
    opts.opt-d // local to this method
4

1 回答 1

0

不支持这种继承。

相反,您可以做的是将此选项对象记录为仅文档类:

/**
 * @class FooOpts
 * A configuration object for Foo, instantiated with object literal.
 */
/** @cfg {String} effect */
/** @cfg {String} direction */
/** @cfg {String|Number} duration */
/** @cfg {String|Function} timing */

然后使用此文档类作为您的参数类型:

* @param {FooOpts} opts Config object for the FooOpts class.

要覆盖这些选项,您可以定义一个子类。

根据您拥有的选项数量,这种方法的开销可能不合理。但也许你在几个地方指定相同的选项这一事实表明你确实会更好地为它们创建一个实际的具体类。

于 2014-05-07T08:57:48.887 回答