使用 jsdoc 记录猫鼬模型方法
Documenting mongoose model methods with jsdoc
我正在尝试使用 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) {
// ...
});
目前我收到一个模块页面,其中包含我的 class 定义的 link 和一个记录 class 定义的页面,但该方法没有出现在任何这些页面上页。当我删除 @memberof
时,该方法将出现在模块页面上。不过我想把它放在 class 页面上。
我缺少 jsdoc 文档的哪一部分?
您必须明确说明模块:
@memberof module:models~MySchema
事实是,当您指定 MySchema
时,jsdoc 不会推断您指的是 MySchema
实体,即 在当前模块 中。
实际上与@this
相同。如果您将其修改为具有模块名称,那么在文档中关于 this
的部分将有一个 link 到 MySchema
.
的定义
我正在尝试使用 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) {
// ...
});
目前我收到一个模块页面,其中包含我的 class 定义的 link 和一个记录 class 定义的页面,但该方法没有出现在任何这些页面上页。当我删除 @memberof
时,该方法将出现在模块页面上。不过我想把它放在 class 页面上。
我缺少 jsdoc 文档的哪一部分?
您必须明确说明模块:
@memberof module:models~MySchema
事实是,当您指定 MySchema
时,jsdoc 不会推断您指的是 MySchema
实体,即 在当前模块 中。
实际上与@this
相同。如果您将其修改为具有模块名称,那么在文档中关于 this
的部分将有一个 link 到 MySchema
.