![](/img/trans.png)
[英]Definition for rule '@typescript-eslint/no-implicit-any' was not found with Storybook js
[英]Eslint Typescript "No Implicit Any" rule
我正在使用 eslint 設置一個新的 typescript 項目。 我正在嘗試正確設置 eslint 規則,以便tsc
命令運行時不會出錯。 我在 tsconfig.json 中使用的“noImplicitAny”規則有問題,但我無法在tsconfig.json
中對此進行檢查。
.eslintrc.js:
module.exports = {
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended",
],
parser: "@typescript-eslint/parser",
parserOptions: {
project: ["tsconfig.json"],
sourceType: "module",
},
rules: {
"no-undef": "warn",
},
plugins: ["@typescript-eslint"],
settings: {
"import/resolver": {
node: {
extensions: [".js", ".ts"],
},
},
},
};
tsconfig.json:
{
"compilerOptions": {
"target": "es5",
"module": "ES6",
"declaration": true,
"outDir": "./lib",
"strict": true,
"noImplicitAny": true
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules", "**/__tests__/*"]
}
簡而言之,我希望 eslint 檢查隱式的 any 並警告其使用。 我如何配置.eslintrc.js
中的規則來實現這一點?
在 TypeScript-ESLint 中已經實現了許多no-unsafe-*
規則:
no-unsafe-call
- 禁止調用any
類型的表達式no-unsafe-member-access
- 禁止使用any
作為成員名稱no-unsafe-argument
- 禁止將any
作為函數參數傳遞no-unsafe-assignment
- 禁止在賦值中使用any
同樣, no-explicit-any
。 把所有這些放在一起,你應該得到充分保護,免受any
問題的影響。
eslint 拒絕添加 no-implicit-any,因為它復制了 typescript 規則。
然而,他們確實制定了一個不應永久使用的過渡規則,它可以滿足您的要求。 一旦可以在 tsconfig 文件中打開這些選項,就應該刪除此規則。
這允許對普通函數和箭頭函數中的隱式參數或 arguments 發出警告。 有比注釋掉的選項更多的選項,下面鏈接的文檔。
'@typescript-eslint/typedef': [
'warn',
{
parameter: true,
arrowParameter: true,
// variableDeclaration: true,
// memberVariableDeclaration: true,
// objectDestructuring: true,
},
],
鏈接到 github 問題不允許 no-implicit-any https://github.com/typescript-eslint/typescript-eslint/issues/3979
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.