jsdoc/require-param 严格
它的作用
要求所有函数参数都必须使用 JSDoc @param 标签进行文档注释。
为什么这是不好的?
该规则旨在通过强制要求所有函数参数均需文档化,来提升代码质量和可维护性。
示例
此规则的错误代码示例:
javascript
/** @param foo */
function quux(foo, bar) {}此规则的正确代码示例:
javascript
/** @param foo */
function quux(foo) {}配置
此规则接受一个配置对象,包含以下属性:
checkConstructors
type: boolean
default: false
是否检查构造函数方法。
checkDestructured
type: boolean
default: true
是否检查解构参数。
checkDestructuredRoots
type: boolean
default: true
当代码形式为 function doSomething({ a, b }) { ... } 时,是否检查解构参数。由于此例中没有命名参数,因此当此选项为 true 时,必须存在对应 {a, b} 的 @param 标签。
checkGetters
type: boolean
default: true
是否检查获取器方法。
checkRestProperty
type: boolean
default: false
是否检查剩余属性。
checkSetters
type: boolean
default: true
是否检查设置器方法。
checkTypesPattern
type: string
default: "^(?:[oO]bject|[aA]rray|PlainObject|Generic(?:Object|Array))$"
用于匹配免除参数检查的类型名称的正则表达式模式。
exemptedBy
type: string[]
default: ["inheritdoc"]
列出会免除函数 @param 检查的 JSDoc 标签。
如何使用
要通过配置文件或 CLI 启用此规则,可以使用:
json
{
"plugins": ["jsdoc"],
"rules": {
"jsdoc/require-param": "error"
}
}bash
oxlint --deny jsdoc/require-param --jsdoc-plugin