Angular with mat-form 无法编译:ngcc 在 parse5@5.1.1 上 运行 失败
Angular with mat-form doesn't compile: ngcc failed to run on parse5@5.1.1
我创建了一个小 mat-form
示例,我无法告诉您为什么会出现编译错误或出了什么问题,因此无法在此处指定,请查看此处:
https://stackblitz.com/edit/angular-ivy-2ummrb
出现的错误:
Error in ~/src/main.ts
ngcc failed to run on parse5@5.1.1.
按照以下步骤操作:
- 将节点更新到 here 的最新版本。
- 在
tsconfig.json
中设置enableIvy: false
。
- 删除
node_modules
和package-lock.json
。
- 运行
npm cache clean --force
.
- 运行
npm install
.
我建议您使用 ng update
找出过时的软件包并通过 运行 宁 ng update @package
命令然后 运行 npm update
更新它们也是。
我刚刚发现我的 StackBlitz 项目存在问题。
步骤 1. 在 StackBlitz 中,尽管您将项目设置为启用或禁用 Ivy,但您还必须通过 StackBlitz 项目设置启用或禁用 Ivy。您会在左侧(设置)找到它。如果您这样做了,请重新加载页面。
第 2 步。 如果某些依赖项的版本不能与 StackBlitz 协同工作(StackBlitz 不支持?),您将收到错误消息,例如缺少一个库。即使您在 packages.json
中包含 @angular/core
,您也会收到类似 @angular/core is missing
.
的消息
在这种情况下,降低版本,也许以前的版本就可以了。
我得到了 Angular 13 的所有这些错误并返回到 Angular 12,一切正常。
我创建了一个小 mat-form
示例,我无法告诉您为什么会出现编译错误或出了什么问题,因此无法在此处指定,请查看此处:
https://stackblitz.com/edit/angular-ivy-2ummrb
出现的错误:
Error in ~/src/main.ts
ngcc failed to run on parse5@5.1.1.
按照以下步骤操作:
- 将节点更新到 here 的最新版本。
- 在
tsconfig.json
中设置enableIvy: false
。 - 删除
node_modules
和package-lock.json
。 - 运行
npm cache clean --force
. - 运行
npm install
.
我建议您使用 ng update
找出过时的软件包并通过 运行 宁 ng update @package
命令然后 运行 npm update
更新它们也是。
我刚刚发现我的 StackBlitz 项目存在问题。
步骤 1. 在 StackBlitz 中,尽管您将项目设置为启用或禁用 Ivy,但您还必须通过 StackBlitz 项目设置启用或禁用 Ivy。您会在左侧(设置)找到它。如果您这样做了,请重新加载页面。
第 2 步。 如果某些依赖项的版本不能与 StackBlitz 协同工作(StackBlitz 不支持?),您将收到错误消息,例如缺少一个库。即使您在 packages.json
中包含 @angular/core
,您也会收到类似 @angular/core is missing
.
在这种情况下,降低版本,也许以前的版本就可以了。
我得到了 Angular 13 的所有这些错误并返回到 Angular 12,一切正常。