两个问题:
首先,有没有人知道如何继承部分文档?特别是对于“选项”对象:
* @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
答案 0 :(得分: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.
要覆盖选项,您可以定义子类。
根据您拥有的选项数量,此方法的开销可能不合理。但也许你在几个地方指定了相同的选项,这表明你最好为他们创建一个实际的具体类。