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

警告:

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


当前回答

在我的情况下,我只是在项目中使用了这个命令:

ng update @angular/cli

其他回答

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

ng --version

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

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

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

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

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

我英语说得不流利

但如果我理解了这个问题,是不是项目的本地CLI版本比全局CLI版本要旧?

您想使用全局更新而不是本地旧的吗?

如果是的话,在项目目录npm link @angular/cli中运行一个非常简单的方法就足够了

更多相关主题请访问:https://docs.npmjs.com/cli/link

这是因为全局角版本和局部角版本不同。要更新全局angular版本,首先你需要在命令提示符或vs code终端运行以下命令

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

之后,如果发现任何漏洞,则运行以下命令来修复它们

npm audit fix

更新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

使用——module参数指定模块。例如,如果主模块是app.module。Ts,运行这个:

ng g c new-component --module app

或者如果你在另一个目录

ng g c component-name --module ../