用jsdoc记录猫鼬模型方法

Aka*_*sha 3 mongoose jsdoc jsdoc3

我正在尝试用jsdoc记录猫鼬模型方法。模型的方法属于模型,因此我希望将其视为成员方法。

该文件也包含一个顶层@module models行。

/**
 * @constructor
 */
var MySchema = new Schema({
  title: {
    type: String,
    required: true
  }
});

/**
 * My method
 *
 * @function myMethod
 * @memberof MySchema
 * @this MySchema
 * @param {ObjectId} object
 * @params {Array} roles, defaults to all
 * @returns Participant or null
 */
 MySchema.method('myMethod', function(object, roles) {
   // ...
 });
Run Code Online (Sandbox Code Playgroud)

当前,我收到一个模块页面,其中包含指向我的类定义的链接,以及一个记录类定义的页面,但是该方法未出现在任何这些页面上。当我删除时@memberof,该方法将出现在模块页面上。我想在课程页面上找到它。

我缺少jsdoc文档的哪一部分?

Lou*_*uis 5

您必须明确说明该模块:

@memberof module:models~MySchema
Run Code Online (Sandbox Code Playgroud)

事实是jsdoc不会推断出当您指定时,MySchema您的意思MySchema当前模块中的实体。

@this实际上与相同。如果将其修改为具有模块名称,则在文档中,有关的部分this将具有指向的定义的链接MySchema