Sam*_*son 5 typescript eslint angular
我在构造函数中有一个未使用的变量,但除了 tsc 之外似乎没有注意到。如果我运行 tsc ,它会告诉我有一个未使用的变量,但似乎我无法做任何事情来使 eslint 识别未使用的变量。
我已经尝试了所有常见的插件和推荐:
"plugin:@angular-eslint/template/process-inline-templates",
"plugin:@typescript-eslint/recommended",
"plugin:import/recommended",
"plugin:import/typescript",
"eslint:recommended"
Run Code Online (Sandbox Code Playgroud)
我的示例组件出现错误如下:
import { Component } from '@angular/core';
import { ApiService } from '../services/api.service';
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
})
export class HomeComponent {
constructor(private apiService: ApiService) {}
}
Run Code Online (Sandbox Code Playgroud)
apiService 是在这种情况下未使用的服务,tsc 告诉我:
属性“staffScheduleSessionService2”已声明,但其值从未读取。ts(6138)
在网上进行了一些搜索,碰巧发现了这篇描述我的发现的帖子。
事实证明,对于未使用的构造函数参数或私有成员,还没有等效的东西(TS 规则 6133 和 6138)。
如果您处于项目的早期阶段,您可以在 TS 配置中启用“noUnusedLocals”和“noUnusedParameters”规则,这将使您的代码从一开始就保持干净。不幸的是,对于后续的项目来说,这可能会出现问题,因为它将阻止项目正确编译,并且需要解决错误。
编译器选项和 ESLint 规则之间脱节的原因似乎是实现起来不太直观,而且自动修复程序变得相当复杂。
| 归档时间: |
|
| 查看次数: |
401 次 |
| 最近记录: |