如果我使用JSDoc创建两个对象,其中一个具有另一个的所有属性,我如何显示它?
例如,你会有:
/**
* @typdef Foo
* @type {Object}
* @property {string} bar
* @property {string} baz
*/
/**
* @typedef Foobar
* @type {Object}
* @property {float} value
* @property {string} bar
* @property {string} baz
*/
字符串
但是我不想写两次bar/baz,我想继承它。
4条答案
按热度按时间7fhtutme1#
我相信你会这么做...
字符串
注意
Foobar
是如何从Foo
“继承”的。k75qkfdt2#
你可以做一个简单的jsdoc插件来使它,这样你就可以在
typedef
上使用@augments
/@extends
。例如,这样的插件可以找到here(如下所示):字符串
在这一点上,你可以做:
型
如果需要,您可以修改模板,以不同方式显示继承的属性和非继承的属性(参见示例):
rjee0c153#
这在VSCode中有效,不知道它有多理想。
字符串
用户现在可以对
Person
和BaseUser
的所有属性进行智能感知xxhby3vn4#
我在解决一个类似的问题时发现了这样一个解决方案:
字符串