使用NPM时出现“npm ERR!missing script:ngcc”错误

4

从一天到另一天,我的Visual Studio Code中的项目开始显示这两个错误:

在此输入图像描述

实际上,几乎所有来自Angular Material的标签都被标记为错误,不被认为是标签。

我尝试使用npm run ngcc,但出现了此错误:

npm ERR! missing script: ngcc

另外,我尝试重新安装npm但情况仍然一样。


你是否将yarnnpm混用作为包管理器?不要这样做,只使用其中一个即可。 - KargWare
不,我从未安装过Yarn,只用npm。 - Camila Margni
我遇到了完全相同的问题,可能是由于Angular Ivy引起的,你使用的是哪个版本的Angular? - MahmoudThePeltist
2个回答

2
我认为你不应该将ivy编译器设置为false,因为它是最新版本Angular的标准编译器,所以如果你无法使其工作,那么这应该是最后的选择。 Ivy编译器 Ivy是Angular下一代编译和渲染管道的代号。从Angular 9版本开始,默认使用新的编译器和运行时指令,而不是View Engine(旧的编译器和运行时)。
使用Ivy的AOT编译速度更快,应该默认使用。在angular.json中进行配置。
尝试删除node_modules并从package.json安装依赖项,希望能解决问题。
rm -rf node_modules/
npm install 

这个命令将会删除 node_modules,然后从你的 package.json 文件中安装依赖项。
或者:
它也可以更新 Angular CLIMaterial(如果使用了它)和 Core,以及其他项目所需的模块,然后更新 NPMTypeScript 包,这也可能解决问题。
ng update @angular/cli @angular/core
npm update @angular/material @angular/cdk
npm install -g typescript@latest

然后检查您的 build-angular 是否设置为与您使用的 Angular 版本相同:
@angular-devkit/build-angular": "Your current version of angular"

0

尝试添加:

  "angularCompilerOptions": {
    "enableIvy": false
  }

将此内容翻译成中文:

将其添加到您的tsconfig.json文件中,然后关闭并重新打开VSCode。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接