【发布时间】:2019-07-14 20:26:38
【问题描述】:
我正在我的 ember 项目中设置 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
}
});
所有其他自然函数定义都按预期工作,只是试图让这些情况正常工作。谢谢!
【问题讨论】:
-
rules元素应该是 json 对象而不是数组。在您的代码中,您似乎在[ ]而不是{ }之间定义了它。如果是这样,它可能与它有关。 -
那是我写这个问题的坏处,它是一个对象。我解决了这个问题,结果我需要打开一个新的终端会话来让我的 VIM ALE 反映这些变化(这是另一个问题):) 谢谢你的建议!
-
你的配置中有
"plugins": ["jsdoc"]吗?
标签: javascript ember.js eslint jsdoc