JSDoc Documenting导出对象中的重复属性

问题描述 投票:1回答:1

我有几个模块,它们都以相同的方式运行并在对象内部导出几个函数,如下所示:

module.exports = {
  a:function(paramA,paramB) {
    return 1;
  },
  b:function(paramC,paramD) {
    return 'a';
  }
}

它们都遵循相同的模式(采用这些参数,做事情,并返回此类型)。我希望能够在同一个文件中记录所有这些文件,以便文档不会在任何地方重复。我遇到的问题是,如果我创建一个指定了这些函数的@typedef,如果这样做就会被忽略:

/**
 * @typedef {Object} myModuleType
 * @property {functionType} a
 */
/**
 * @module A
 * @type {myModuleType}
 */
 module.exports = {}

如果我创建一个接口,它会抱怨如果这样做的方法没有实现:

/**
 * @interface myModuleType
 */
/**
 * @function
 * @name myModuleType#a
 * @param paramA
 * @param paramB
 * @return {number}
 */
/**
 * @module A
 * @implements {myModuleType}
 */
module.exports = {}

有关如何使其工作的任何想法?

javascript jsdoc3
1个回答
0
投票

因此,原始的@type注释实际上是有效的,它只是在记录后不会像在WebStorm中那样自动完成。

这是在YouTrack上为WebStorm跟踪它何时修复。

编辑:截至2017年12月18日,这已在最近的WebStorm版本中得到修复,并应尽快进入主分支。

© www.soinside.com 2019 - 2024. All rights reserved.