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

Angular@13从tslint迁移至eslint时遭遇大量依赖错误,求助排查

Angular 13 迁移 ESLint 依赖错误解决指南

一、先确认是否完成官方标准迁移流程

依赖错误大概率是跳过了官方迁移工具的自动处理步骤,直接手动修改配置导致的,先补全以下操作:

  • 卸载所有TSLint相关依赖:
    npm uninstall tslint tslint-eslint-rules codelyzer --save-dev
    
  • 安装Angular官方ESLint套件:
    npm install @angular-eslint/schematics --save-dev
    
  • 执行自动迁移命令:
    ng add @angular-eslint/schematics
    
    该命令会自动替换配置文件(生成.eslintrc.json、删除tslint.json)、更新Angular CLI配置,同时处理基础的依赖兼容问题。

二、针对性解决依赖冲突

如果已经执行上述步骤仍报错,按以下方向排查:

  1. 必须升级@angular/cdk和flex-layout到兼容版本
    Angular 13要求这两个包的版本必须为13.x系列,否则会出现依赖不兼容:
    • 升级@angular/cdk:
      npm install @angular/cdk@^13.0.0 --save
      
    • 升级@angular/flex-layout:
      npm install @angular/flex-layout@^13.0.0-beta.38 --save
      
  2. 彻底清理依赖后重装
    仅清理缓存不足以解决问题,执行完整清理流程:
    • 删除node_modules文件夹:
      # Mac/Linux
      rm -rf node_modules
      # Windows
      rmdir /s /q node_modules
      
    • 删除package-lock.json文件
    • 强制清理npm缓存:
      npm cache clean --force
      
    • 重新安装依赖:
      npm install
      
  3. 确保ESLint相关包版本匹配
    Angular 13对应的@angular-eslint版本必须为13.x,禁止安装更高版本,可在package.json中确认如下版本范围:
    "@angular-eslint/builder": "^13.0.1",
    "@angular-eslint/eslint-plugin": "^13.0.1",
    "@angular-eslint/eslint-plugin-template": "^13.0.1",
    "@angular-eslint/schematics": "^13.0.1",
    "@angular-eslint/template-parser": "^13.0.1",
    "@typescript-eslint/eslint-plugin": "^5.10.0",
    "@typescript-eslint/parser": "^5.10.0",
    "eslint": "^8.7.0"
    
    若版本不符,手动指定版本安装:
    npm install @angular-eslint/schematics@^13.0.1 eslint@^8.7.0 --save-dev
    

三、验证迁移效果

执行lint命令确认是否正常工作:

ng lint

内容的提问来源于stack exchange,提问作者Sachin Kumar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 16:10:27