如何使用 TSLint 查看反应脚本 ESLint 错误

Posted

技术标签:

【中文标题】如何使用 TSLint 查看反应脚本 ESLint 错误【英文标题】:How to see react scripts ESLint errors with TSLint 【发布时间】:2020-03-27 02:52:21 【问题描述】:

react-script 在内部使用typescript-eslint,它会引发警告/错误,您会在应用程序运行的终端中看到它。

我确实使用 create-react-app --typescript 创建了 react 应用程序,并设置了一个 tslint.json,如下所示:

 
  "defaultSeverity": "error",
  "extends": [
    "tslint:recommended",
    "tslint-react",
    "tslint-eslint-rules",
    "tslint-plugin-prettier",
    "tslint-config-prettier"
  ],
  "jsRules": ,
  "linterOptions": 
    "exclude": ["node_modules", "dist", "build", "src/serviceWorker.ts"]
  ,
  "rules": 
    "prettier": [true, "./.prettierrc"]
  ,
  "rulesDirectory": []

package.json 中的"lint": "tslint -p tsconfig.json -c tslint.json 'src/**/*.ts,tsx'" 之类的皮棉检查脚本。

但并非react-script 中的所有typescript-eslint 都被tslint 覆盖,并且 lint 脚本在存在一些警告时通过。

我应该完全放弃tslint 的使用并转而使用eslint 吗?如果是这样,有人可以提供设置的 sn-p 吗?

或者,如果 Tslint 有任何更新计划并涵盖来自 typescript-eslint 的所有警告

【问题讨论】:

【参考方案1】:

也许您可以调整您的 tslint 配置以获取它错过的警告,但我认为这不值得。

对于初学者,您注意到 CRA 已切换到 eslint-typescript,我认为只使用官方支持的 linter 而不是同时使用旧的和新的更容易。

此外,tslint 已正式弃用,取而代之的是 eslint-typescript,因此您正在逆流而上,我怀疑会有更新。您现在也许可以让 tslint 随心所欲地工作,但可能不会在您的应用程序的整个生命周期内工作。

转用 eslint-typescript 差不多一年前就宣布了,现在像 CRA 这样的主要项目也已经切换,我认为早期的问题已经解决,现在是所有新项目都使用它的时候了。

【讨论】:

是的,谢谢,这些是我已经知道的好点,我主要寻找的是一个设置 sn-p,从 react-app 延伸到 prettier.eslintrc 内没有按照create-react-app.dev/docs/setting-up-your-editor 的建议工作。我让人们把这些规则放在package.json 我正在寻找一个工作简单的设置

以上是关于如何使用 TSLint 查看反应脚本 ESLint 错误的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 typescript 同步 eslint 或设置类似的 tslint 和 prettier?

如何运行@angular-eslint/schematics:convert-tslint-to-eslint

“TSLint 仍然存在” => 从 TSlint 升级到 ESLint

从tslint迁移

Tslint/eslint vs 更漂亮

tslint-eslint-rules 与 SonarQube?