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

NX 20 + Angular 19项目升级Angular及Angular ESLint至19.x版本时遇到@angular-eslint类型信息依赖错误

NX 20 + Angular 19项目升级Angular及Angular ESLint至19.x版本时遇到@angular-eslint类型信息依赖错误

我之前在NX + Angular项目升级的时候也碰到过一模一样的问题,这个错误的原因很明确——@angular-eslint/no-uncalled-signals这条规则属于需要TypeScript类型信息才能正常工作的规则,而你的ESLint配置里还没开启类型检查模式,所以才会抛出这个提示。

下面是我亲测有效的解决步骤:

  • 首先找到你项目里的ESLint配置文件,NX项目里一般是根目录的.eslintrc.json,或者每个Angular子项目下单独的.eslintrc.json。
  • 打开配置文件,找到parserOptions节点,添加project字段,明确指向你的TypeScript配置文件路径。比如:
    "parserOptions": {
      "ecmaVersion": "latest",
      "sourceType": "module",
      "project": [
        "./tsconfig.json",
        "./tsconfig.app.json",
        "./tsconfig.spec.json"
      ]
    }
    
    注意:这里的路径要根据你项目的实际结构来调整,比如NX的库项目可能要写成"libs/your-library/tsconfig.lib.json"。
  • 另外,确保你的ESLint配置的extends里包含了带类型检查的Angular ESLint预设,比如:
    "extends": [
      "plugin:@angular-eslint/recommended",
      "plugin:@angular-eslint/recommended-type-checked"
    ]
    
    这个预设会帮你自动引入需要的类型检查相关配置,避免手动配置遗漏。
  • 如果你的项目里还没安装@typescript-eslint/parser和@typescript-eslint/eslint-plugin,可以通过NX命令快速安装:
    nx add @typescript-eslint/eslint-plugin @typescript-eslint/parser
    
    或者用npm安装:
    npm install --save-dev @typescript-eslint/eslint-plugin @typescript-eslint/parser
    

还有几个需要注意的细节:

  • 不要用**/tsconfig.json这种通配符来指定project路径,ESLint的类型检查模式不支持通配符,必须明确列出每个tsconfig文件。
  • 如果你是NX monorepo,建议在根.eslintrc.json里用overrides字段,针对不同的项目(应用或库)分别配置对应的project路径,这样管理起来更清晰。

配置完成后,重新运行ESLint检查,这个错误应该就会消失了。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 08:12:57