当运行ng serve时,我得到一个关于我的全局CLI版本大于本地版本的警告。我没有注意到这个警告有任何问题,但我想知道两个版本是否应该同步?另外,如果你有一个全局版本,是否有必要有一个本地版本?

警告:

你的Angular CLI全局版本(1.1.1)比你的本地版本(1.0.6)更高。使用的是Angular CLI的本地版本。


当前回答

更新Angular CLI的工作区(Local)

npm install --save-dev @angular/cli@latest

注意:如果安装正确,请确保使用' -g '命令安装全局版本

npm install -g @angular/cli@latest

运行Update命令获取需要升级的所有依赖项的列表

ng update

对每个Angular核心包运行update命令,如下所示

ng update @angular/cli @angular/core

然而,我不得不添加' -force '和' -allow-dirty '标志来解决所有其他悬而未决的问题

ng update @angular/cli @angular/core --allow-dirty --force

其他回答

还有另一种方法可以避免全局安装以创建新应用程序。 就我而言,我使用的是Angular 9,但客户需要的是Angular 8。

# create an empty directories
mkdir angular-8-cli
mkdir my-angular-8-project

# init empty npm project
cd angular-8-cli
npm init -y

# install local angular 8 cli
npm i @angular/cli@8

# go to your angular 8 project
cd ../my-angular-8-project

# use previously installed angular 8 cli to create a new angular 8 project
../angular-8-cli/node_modules/.bin/ng new my-angular-8-project --directory=.

首先通过运行找到angular-cli的全局版本

ng --version

上面的代码将显示angular-cli的全局版本和本地版本。

如果你想要全局和局部的angular cli是一样的,你可以这样做

npm install --save-dev @angular/cli@1.7.4

你的angular-cli的全局版本是1.7.4

然后如果你运行ng serve,打开你的代码就会运行。

npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest

执行以下命令可自动更新您的现有配置:

ng update @angular/cli

or:

npm install

这就是我解决它的方法。在Visual Studio Code的终端中,首先清理缓存

npm cache clean --force

然后更新cli

ng update @angular/cli

如果在此之后缺少任何模块,使用下面的命令

npm install

执行以下命令:npm install——save-dev @angular/cli@latest

运行上述命令后,控制台可能会弹出下面的消息

Angular CLI的配置格式已经改变,您的 命令可以自动更新现有配置 命令如下:ng update @angular/cli