gpt4 book ai didi

javascript - ESlint Angular - no-unused-vars 命中类型定义

转载 作者:行者123 更新时间:2023-12-01 00:39:50 25 4
gpt4 key购买 nike

我正在升级/重构一个 Angular 项目(到Angular 8、Electron 6、Ionic 4),我们决定从 TSLint 切换到 ESLint。

我设置了一些规则并且它们正在运行,但我无法摆脱类型定义的 no-unused-vars 警告。当我运行 linting 时,我会收到针对 OperatorFunctionObservable 的警告,这显然不是问题。

import { OperatorFunction, Observable, timer } from 'rxjs';
import { tap } from 'rxjs/operators';

export function executeDelayed<T>(fn: () => void, delayTime: number): OperatorFunction<T, T> {
return function executeDelayedOperation(source: Observable<T>): Observable<T> {
//...
}
}

.eslintrc.js 文件使用此配置

module.exports = {
"env": {
"browser": true,
"es6": true,
"node": true
},
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:prettier/recommended"
],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": [
"@typescript-eslint"
],
"rules": {
"no-unused-vars": [
"warn",
{
"vars": "local",
"ignoreSiblings": true,
"args": "after-used",
"argsIgnorePattern": "res|next|^err"
}
],
"no-use-before-define": [
"error",
{
"functions": true,
"classes": true
}
]
}
};

我在这里遇到了多个类似的问题,但无法找到解决方案。任何想法? 切换回 TSLint 不是一个选项

最佳答案

我遇到了类似的问题,但能够按照 @typescript-eslint/eslint-plugin README 的建议解决它。 。本质上,我只是将我的 extends 部分更改为如下所示:

"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended"
]

更改后,所有 no-unused-vars 错误和警告都消失了。

据我所知,"plugin:@typescript-eslint/recommended" 行会覆盖 eslint:recommished 规则,这些规则不适用于 TypeScript,尤其是no-unused-vars 一个。

希望有帮助!

关于javascript - ESlint Angular - no-unused-vars 命中类型定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57801008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com