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

Angular 6.0.1 CLI执行ng lint --type-check时抛出Architect错误求助

解决Angular CLI v6中ng lint --type-check多项目报错问题

这个错误是Angular CLI v6的行为变化导致的:当你执行ng lint不带项目名时,它会默认对所有在angular.json中配置的项目(你的场景里是atlas-fe和atlas-fe-e2e)运行lint检查。而--type-check属于命令行覆盖参数,CLI不允许在同时针对多个项目运行时使用这类参数——因为不同项目的lint配置可能存在差异,无法统一应用这个覆盖项。

解决方案1:指定单个项目运行lint

修改你package.json里的lint-ts脚本,明确指定只对主项目atlas-fe执行lint+类型检查:

"lint-ts": "npm run format-ts && ng lint atlas-fe --type-check"

这样命令只会作用于单个项目,就可以正常使用--type-check参数了。

解决方案2:把类型检查配置到项目的lint选项中(更推荐)

如果你不想每次都在命令行加参数,可以直接修改angular.json文件,把typeCheck设为默认选项:

  1. 找到projects.atlas-fe.architect.lint.options节点
  2. 添加"typeCheck": true配置项,示例如下:
"lint": {
  "builder": "@angular-devkit/build-angular:tslint",
  "options": {
    "tsConfig": [
      "src/tsconfig.app.json",
      "src/tsconfig.spec.json"
    ],
    "exclude": [
      "**/node_modules/**"
    ],
    "typeCheck": true // 新增这一行
  }
}

之后你只需要运行ng lint atlas-fe(或者把package.json里的lint-ts改成npm run format-ts && ng lint atlas-fe),就会自动执行类型检查了。

额外说明

如果你需要对e2e项目也做lint检查,可以单独添加一个脚本,比如:

"lint-e2e": "ng lint atlas-fe-e2e"

因为e2e项目通常不需要类型检查(或者配置逻辑不同),分开执行会更灵活。

内容的提问来源于stack exchange,提问作者Nuno Roma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:37:16