【发布时间】:2021-01-21 11:05:31
【问题描述】:
我有一个包含以下包的 TypeScript 应用程序 (4.0.x):
"@typescript-eslint/eslint-plugin": "^4.0.1",
"@typescript-eslint/parser": "^4.0.1",
"@vue/cli-plugin-eslint": "^4.5.4",
"eslint": "^7.8.1",
"eslint-plugin-jsdoc": "^30.3.1",
我的 .eslintrc.js 包括以下内容:
'extends': [
'plugin:vue/essential',
'eslint:recommended',
'@vue/typescript/recommended',
"plugin:jsdoc/recommended"
],
parserOptions: {
ecmaVersion: 2020
},
plugins: [
"jsdoc"
],
rules: {
'jsdoc/require-property-description': 1,
'jsdoc/require-description': 1,
'jsdoc/require-param-type': 'off',
'jsdoc/require-returns-type': 'off',
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
}
当我对我的代码运行 ESLint 时,如果在类上定义的属性不包含 JSDoc 描述,我希望它返回错误或警告。
例如,使用以下代码,我会收到一条关于 id、mainCharacters 和 state 缺少 JSDoc 描述的消息。
export default class Party {
public id = -1;
public mainCharacters: Character[] = [];
public state: PartyState;
/**
* Location index.
*/
public location = 0;
根据文档,jsdoc/require-property* 规则似乎不起作用,但我确实尝试将它们打开,并且它们没有报告缺少 JSDocs。
'jsdoc/require-property': 1,
'jsdoc/require-property-description': 1,
'jsdoc/require-property-name': 1,
'jsdoc/require-property-type': 1,
我缺少哪些 ESLint 规则会报告 TypeScript 属性上缺少 JSDocs?
【问题讨论】:
标签: typescript jsdoc typescript-eslint eslint-plugin-jsdoc