我要在余烬项目中设置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
}
});
所有其他自然函数定义均按预期工作,只是试图使这些情况起作用。谢谢!
答案 0 :(得分:1)
不推荐使用require-jsdoc
,检查类声明和函数上JSDoc注释是否正确的正确方法是安装eslint-plugin-jsdoc
插件并使用jsdoc/require-jsdoc
规则。
一旦拥有:
rules: [
...
'jsdoc/require-jsdoc': 1,
...
]
ESLint将开始警告有关缺少评论的信息。如果您做包含一些注释,则将强制执行所有其他规则,例如jsdoc/require-description
或jsdoc/require-param
。
请注意,jsdoc/require-jsdoc
规则不仅需要函数声明,还需要一些配置。例如:
rules: [
...
'jsdoc/require-jsdoc': [1, {'require': {
FunctionExpression: true,
ClassDeclaration: true
}}],
...
]