You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行convert-tslint-to-eslint提示不支持,求解决方法

Angular 17下TSLint转ESLint报错:convert-tslint-to-eslint schematic不再支持的解决办法

问题背景

执行ng add @angular-eslint/schematics成功后,运行ng g @angular-eslint/schematics:convert-tslint-to-eslint触发报错:

Error: The `convert-tslint-to-eslint` schematic is no longer supported.

Please see https://github.com/angular-eslint/angular-eslint/blob/main/docs/MIGRATING_FROM_TSLINT.md

该报错提及的文档正是迁移时使用的指南,且三周前还能正常使用该schematic。环境信息:

Angular CLI: 17.0.7
Node: 18.13.0
Package Manager: npm 8.19.3
OS: darwin x64

Angular: 17.0.7
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, localize, platform-browser
... platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1700.7
@angular-devkit/build-angular   17.0.7
@angular-devkit/core            17.0.7
@angular-devkit/schematics      17.0.7
@schematics/angular             17.0.7
rxjs                            7.8.1
typescript                      5.2.2
zone.js                         0.14.2

问题原因

angular-eslint v17版本正式移除了convert-tslint-to-eslint这个转换schematic,而适配Angular 17的@angular-eslint/schematics默认就是v17版本,因此触发该报错。三周前你使用的应该是v16版本的angular-eslint,当时该schematic还未被移除。

可行解决办法

办法一:临时降级angular-eslint完成转换

  1. 卸载当前安装的angular-eslint依赖:
npm remove @angular-eslint/schematics @angular-eslint/eslint-plugin @angular-eslint/eslint-plugin-template @angular-eslint/template-parser
  1. 安装v16版本的schematics:
npm install --save-dev @angular-eslint/schematics@16
  1. 执行转换命令:
ng g @angular-eslint/schematics:convert-tslint-to-eslint
  1. 转换完成后,升级回v17版本的angular-eslint:
npm install --save-dev @angular-eslint/schematics@latest @angular-eslint/eslint-plugin@latest @angular-eslint/eslint-plugin-template@latest @angular-eslint/template-parser@latest

办法二:使用替代工具手动迁移

  1. 安装tslint-to-eslint-config工具:
npm install --save-dev tslint-to-eslint-config
  1. 生成初始的ESLint配置文件:
npx tslint-to-eslint-config
  1. 手动调整配置适配Angular项目:
    • 在生成的.eslintrc.json中引入Angular ESLint插件和规则,示例配置片段:
      "plugins": ["@angular-eslint"],
      "extends": [
        "eslint:recommended",
        "plugin:@angular-eslint/recommended",
        "plugin:@angular-eslint/template/process-inline-templates"
      ],
      "rules": {
        // 替换通用规则为Angular专属规则
        "@angular-eslint/no-unused-vars": "error",
        "@angular-eslint/directive-selector": ["error", { "type": "attribute", "prefix": "app", "style": "camelCase" }],
        "@angular-eslint/component-selector": ["error", { "type": "element", "prefix": "app", "style": "kebab-case" }]
      }
      
  2. 移除TSLint相关依赖和文件:
npm remove tslint codelyzer
rm tslint.json

内容的提问来源于stack exchange,提问作者Rod Nolan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 14:05:26