no shadow在JHipster应用程序中声明任何TypeScript枚举时为假阳性



我想在我的应用程序中使用枚举:

export const enum typeEnum {
TVY = 'TVY',
USER = 'USER',
}

在npm运行webpack:build时,我得到以下错误:

12:111错误"typeEnum"已在上部作用域中声明无阴影

我在几个与此错误相关的链接上读到,解决方案是将以下内容添加到esint规则中:

"no-shadow": "off",
"@typescript-eslint/no-shadow": "error"

这就是我在.eslintrc.json文件中所做的:

{
"plugins": ["@typescript-eslint/tslint"],
"extends": ["jhipster"],
"parserOptions": {
"project": "./tsconfig.base.json"
},
"rules": {
"@typescript-eslint/tslint/config": [
"error",
{
"lintFile": "./tslint.json"
}
],
"@typescript-eslint/no-unused-vars": [
"warn",
{
"vars": "all",
"args": "after-used",
"ignoreRestSiblings": false
}
],
"@typescript-eslint/no-non-null-assertion": "off",
"no-shadow": "off",
"@typescript-eslint/no-shadow": "error"
}
}

但现在,我在npm run:webpack:build:上也收到了这个错误

myPath\src\main\webapp\app\vendor.ts[INF]1:1错误定义找不到规则"@typescript eslint/no shadow"@typescript eslint/no shadow

你知道我能做什么吗?

谢谢,

Manuela

事实证明,您需要关闭标准esint规则,而使用TypeScript特定的值。

"no-shadow": "off",
"@typescript-eslint/no-shadow": ["error"],
  • 此处注明:https://github.com/typescript-eslint/typescript-eslint/issues/2483
  • esint规则:https://eslint.org/docs/rules/no-shadow
  • TypeScript规则:https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-shadow.md

(我刚刚遇到这个问题,做了这个更改,它为我解决了它(

这个错误基本上意味着您在更高级别的某个地方(可能在全局范围内(有另一个同名的枚举。尝试重命名您的枚举和外观。

顺便说一句。取消规则是一种不好的做法。TS/ES linters指出代码出现问题的地方。在大多数情况下,您必须修复代码中的问题,而不是仅仅关闭linter。

解决方案仅添加:

"no-shadow": "off" 

相关内容

  • 没有找到相关文章

最新更新