使用jsdoc记录mongoose模型方法

时间:2015-02-14 15:32:44

标签: mongoose jsdoc jsdoc3

我试图用jsdoc记录mongoose模型方法。模型的方法属于该模型,因此我希望将其视为其成员方法。

该文件也包含顶级@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) {
   // ...
 });

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

我错过了哪些jsdoc文档?

1 个答案:

答案 0 :(得分:5)

您必须明确该模块:

@memberof module:models~MySchema

事实是jsdoc不会推断当你指定MySchema时,你指的是当前模块中MySchema实体

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