我已从 Angular 8 升级到 9,并按照此处的所有步骤启用了 Ivy 。当我运行npm install
一些我的包时抛出错误:
Tried to overwrite <package_path>.__ivy_ngcc_bak with an ngcc back up file, which is disallowed
.
这是什么意思,为什么会这样?我很难找到有关它的任何信息。我已经为所有抛出此错误的软件包安装了最新版本,但运行时仍然出现错误npm install
。谢谢!
我已从 Angular 8 升级到 9,并按照此处的所有步骤启用了 Ivy 。当我运行npm install
一些我的包时抛出错误:
Tried to overwrite <package_path>.__ivy_ngcc_bak with an ngcc back up file, which is disallowed
.
这是什么意思,为什么会这样?我很难找到有关它的任何信息。我已经为所有抛出此错误的软件包安装了最新版本,但运行时仍然出现错误npm install
。谢谢!
这是关于 ivy 编译器的问题,它是 angular 9 以后的默认编译器(阅读问题详细信息)。您可以如下禁用常春藤编译器以避免此错误。
去tsconfig.json
寻找angularCompilerOptions
。
然后在下面添加
"angularCompilerOptions": {
"enableIvy": false
}
当您拥有 ivy 编译的节点包并更新节点包的文件时,可能会发生这种情况。
要解决此问题,请删除文件名或文件扩展名中包含的节点包(例如 in <package_path>
)的所有编译文件,然后重新启动 Angular。__ivy_ngcc_