不支持:关键字“id”,使用“$id”作为架构 ID:TSLint(ng add @angular-eslint/schematics)

Sat*_*ngh 50 lint node.js angular

我正在将 Angular 10 应用程序升级到 Angular 13。我在依赖项的其他兼容性方面做得很好。该项目正在编译并且运行良好。现在是 TSLint 的时间了,我尝试使用以下命令更新 lint。

ng add @angular-eslint/schematics
Run Code Online (Sandbox Code Playgroud)

但收到错误消息:

An unhandled exception occurred: NOT SUPPORTED: keyword "id", use "$id" for schema ID
Run Code Online (Sandbox Code Playgroud)

小智 33

对于 eslint:

ng add @angular-eslint/schematics@12 #for angular 12

ng add @angular-eslint/schematics@13 #for angular 13

ng add @angular-eslint/schematics@14 #for angular 14
Run Code Online (Sandbox Code Playgroud)

  • 您可以指定更多,例如现在使用“@14.2.0”。(但是“@14.2.10”会过多:它不会在此详细级别匹配)。 (2认同)

小智 25

ng add @angular-eslint/schematics@next
Run Code Online (Sandbox Code Playgroud)

这对我有用 github.com/angular-eslint/angular-eslint/issues/790

  • 当我升级到 Angular 14 时,这对我有用。谢谢! (2认同)

Ric*_*rre 11

我解决了将 Angular cli 版本降级到 12 的问题

在此输入图像描述


Nen*_*vic 8

看来很多包都会抛出这个错误。添加 NgRx 商店时我遇到了同样的错误。看来安装最新版本的软件包通常可以解决该问题:

ng add package_name/@latest
Run Code Online (Sandbox Code Playgroud)