当前位置: 代码迷 >> JavaScript >> 无法获得eslint对Ember类,道具,动作没有jsDoc发出警告
  详细解决方案

无法获得eslint对Ember类,道具,动作没有jsDoc发出警告

热度:20   发布时间:2023-06-05 09:23:11.0

我在余烬项目中设置了eslint。 我要强制所有功能,类,操作和属性都用jsDoc记录。

我面临的问题是,我似乎无法让强制措施在操作,组件声明或对象属性上起作用。

我最初尝试使用“ require-jsdoc”,但也注意到此规则已被弃用。 然后,我使用以下配置安装eslint-plugin-jsdoc:

rules: [
  ...
  'jsdoc/check-examples': 0,
  'jsdoc/check-param-names': 1,
  'jsdoc/check-tag-names': 1,
  'jsdoc/check-types': 1,
  'jsdoc/newline-after-description': 1,
  'jsdoc/no-undefined-types': 1,
  'jsdoc/require-description': 1,
  'jsdoc/require-description-complete-sentence': 1,
  'jsdoc/require-example': 1,
  'jsdoc/require-hyphen-before-param-description': 1,
  'jsdoc/require-param': 1,
  'jsdoc/require-param-description': 1,
  'jsdoc/require-param-name': 1,
  'jsdoc/require-param-type': 1,
  'jsdoc/require-returns': 1,
  'jsdoc/require-returns-check': 1,
  'jsdoc/require-returns-description': 1,
  'jsdoc/require-returns-type': 1,
]

而且仍然没有运气。 任何想法如何使以下工作?

// throw eslint warning if not documented
export default Component.extend({
  someProp: false, // throw eslint warning if not documented
  actions: {
    someAction() {} // throw eslint warning if not documented
  }
});

所有其他自然函数定义均按预期工作,只是试图使这些情况起作用。 谢谢!

随着require-jsdoc的弃用,检查类声明和函数上JSDoc注释是否正确的正确方法是安装插件并使用jsdoc/require-jsdoc规则。

一旦拥有:

rules: [
  ...
  'jsdoc/require-jsdoc': 1,
  ...
]

ESLint将开始警告有关缺少注释的信息。 如果确实包含一些注释,那么将强制执行所有其他规则,例如jsdoc/require-descriptionjsdoc/require-param

请注意,如果您希望jsdoc/require-jsdoc规则不仅适用于函数声明,还需要进行一些配置。 例如:

rules: [
  ...
  'jsdoc/require-jsdoc': [1, {'require': {
    FunctionExpression: true,
    ClassDeclaration: true
  }}],
  ...
]
  相关解决方案