当运行ng serve时,我得到一个关于我的全局CLI版本大于本地版本的警告。我没有注意到这个警告有任何问题,但我想知道两个版本是否应该同步?另外,如果你有一个全局版本,是否有必要有一个本地版本?
警告:
你的Angular CLI全局版本(1.1.1)比你的本地版本(1.0.6)更高。使用的是Angular CLI的本地版本。
当运行ng serve时,我得到一个关于我的全局CLI版本大于本地版本的警告。我没有注意到这个警告有任何问题,但我想知道两个版本是否应该同步?另外,如果你有一个全局版本,是否有必要有一个本地版本?
警告:
你的Angular CLI全局版本(1.1.1)比你的本地版本(1.0.6)更高。使用的是Angular CLI的本地版本。
当前回答
我英语说得不流利
但如果我理解了这个问题,是不是项目的本地CLI版本比全局CLI版本要旧?
您想使用全局更新而不是本地旧的吗?
如果是的话,在项目目录npm link @angular/cli中运行一个非常简单的方法就足够了
更多相关主题请访问:https://docs.npmjs.com/cli/link
其他回答
有两种方法可以解决这个全局和局部的angular CLI版本问题。 1. 为这两个环境保留一个特定的angular-cli版本。 2. Goto这两个环境的最新angular-cli版本。
1. angular-cli的特定版本
首先,找出你想在全局和局部环境中保留的angular版本。
ng --version
例如:这里我们保持angular CLI的本地版本8.3.27
所以,我们必须在8.3.27修改全局版本。 使用cmd >
npm install --save-dev @angular/cli@8.3.27 -g
在这里,'-g'标志用于设置angular-cli的全局版本。
2. 转到两种CLI环境下的最新angular版本。
npm install --save-dev @angular/cli@latest -g
npm install --save-dev @angular/cli@latest
还有另一种方法可以避免全局安装以创建新应用程序。 就我而言,我使用的是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=.
在版本中
NPM install——save-dev @angular/cli@latest
关闭命令提示符并再次打开 ng版本 如果你的PowerShell不识别ng命令,在你的PowerShell运行这个命令:
Set-ExecutionPolicy -scope currentuser -executionpolicy remotessigned
更新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
这就是我解决它的方法。在Visual Studio Code的终端中,首先清理缓存
npm cache clean --force
然后更新cli
ng update @angular/cli
如果在此之后缺少任何模块,使用下面的命令
npm install