如何卸载/升级Angular CLI?


99

当我尝试使用Angular CLI创建新项目时,请执行以下操作:

ng n app

我收到此错误:

fs.js:640返回binding.open(pathModule._makeLong(path),stringToFlags(flags),mode); ^ TypeError:路径必须是TypeError(本地)处的字符串或Buffer

如何升级或卸载Angular CLI


6
使用npm uninstall -g angular-cli
ranakrunal16年

8
现在,使用npm uninstall -g @angular/clistackoverflow.com/questions/43070441/...
杰里米·莫里茨

Answers:


278

使用以下命令进行卸载:

npm uninstall -g @angular/cli
npm cache clean --force

验证:ng --version / *您将收到错误消息,然后您已卸载* /

使用以下命令重新安装:

npm install -g @angular/cli

注意: -使用--force清理所有缓存-在Windows上使用管理员运行此命令 -在Mac上使用sudo$ sudo <command>

  • 如果您正在使用npm>5,则可能需要使用缓存验证。($ npm cache verify

11
请注意,Angular CLI已移至@ angular / cli:[sudo] npm install -g @ angular / cli
Osmund Francis

5
npm cache clean被npm cache verfy取代,所以看来
Arnd Brugman

2
npm ERR!从npm @ 5开始,npm缓存会因损坏问题而自我修复,并且保证从缓存中提取的数据是有效的。如果要确保所有内容都一致,请改用“ npm cache verify”。
NoamG '17

如何卸载最新版本的angular cli并安装angular cli 1.6.1
Ayyappa amara 18-1-21

3
@NaomG npm版本> 5不需要您清理缓存..但仍然可以在需要时运行npm cache clean --force
Ashish Yadav

27

以上所有解决方案都不对我有用。在Windows 7上,此方法有效:

安装快速环境编辑器并删除节点的所有条目,npm, angular-cli or @angular/cli

卸载node.js并重新安装。再次运行Rapid Environment Editor,并确保node.js和npm位于系统或用户路径中。使用以下命令卸载任何现有的ng版本:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

删除C:\Users\YOU\AppData\Roaming\npm\node_modules\@angular文件夹。

重新启动,然后最后运行:

npm install -g @angular/cli

然后屏住呼吸并运行ng -v。如果幸运的话,您会得到一些爱。每次运行ng命令时,请屏住呼吸,因为ng运行良好后,“找不到命令”已神奇地复现了几次,我认为问题已解决。




6

删除全球参考

npm uninstall -g angular-cli
npm cache clean

但是错误是一样的。有没有人对fs.js:640返回的任何解决方案return binding.open(pathModule._makeLong(path),stringToFlags(flags),mode); ^类型错误:路径必须在Object.fs.openSync是在类型错误(天然的)的字符串或缓冲液(fs.js:640:18)在Object.fs.readFileSync(fs.js:508:33)
RohanArihant

这是一个非常普通的错误,可能是任何原因,缺少依赖项或配置错误。最好在github.com/angular/angular.js/issues上问这个问题。上面的BTW是卸载angular的方法。
AT

在末尾添加“ --force”,不带单引号。
戴尔

4

Angular cli已移至@angular/cli,因此从github自述文件开始,

sudo npm uninstall -g @angular/cli
npm cache clean

4

我最近在Mac上遇到了这个问题,不得不从中删除ng文件夹/usr/local/bin。距今很久,我安装了Angular CLI,但我不完全确定最初的安装方式。


2

要全局卸载它,只需运行以下命令:

npm uninstall -g @angular/cli

完成后,通过运行以下命令清除缓存:

npm cache clean

现在,要安装Angular的latset版本,只需运行:

npm install -g @angular/cli@latest

有关Angular CLI的详细信息,请查看Angular简介和CLI指南


1
您的所有三个答案都提到相同的链接。如果您有任何隶属关系,则需要添加披露信息。即使这样做,也请记住,过度自我宣传也可以视为垃圾邮件。看看如何不要成为垃圾邮件发送者
Zoe

2

我尝试了以上所有方法,但仍然坚持在全球范围内发展。因此,我在powershell中运行Get-Command ng,然后很清楚我的问题是什么。过去,我大量使用纱线,所有旧的角度cli包也已全局安装在纱线存放位置。我已经删除了我的纱线缓存,这是一个很好的措施,但可能可以通过纱线更新全局角度cli。无论如何,我希望这可以帮助您提醒一些人,如果您使用yarn,那么ng等全局命令也可以位于npm放置它们的其他路径之外。


2

常规解决方案,并不总是可行的:

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli

其他更激烈的解决方案:

  • Angular CLI全局卸载
npm uninstall -g @angular/cli
  • 卸载Node.jsnpm卸载
  • 删除与Node.js&相关的所有环境变量npm
  • 删除资料夹 C:\Users\<user>\AppData\Roaming\npmC:\Users\<user>\AppData\Roaming\npm-cache
  • 验证以下命令是否为ko:
ng version
npm -v
node -v
npm install -g @angular/cli
  • 最后,检查您的全局Angular CLI版本:
ng version

1

很好地满足了上面的许多答案,即使我遇到了这样的问题,即我也无法在Mac OS 10.15.3上创建带有angular cli 9.1.0的新应用。通过卸载angular cli,清理缓存并重新安装angular cli可以解决我的问题。

npm uninstall -g @angular/cli

使用以下命令验证安装状态 ng --version

npm cache verify
npm install -g @angular/cli

立即尝试创建新应用,ng new my-app看看以上内容是否有帮助。


0

如果您是全局安装的,请使用以下命令,

 npm uninstall -g angular-cli

0

不是您问题的答案,而是您提到的问题的答案:

似乎您使用的angular-cli版本的配置文件错误。

在angular-cli.json文件中,尝试更改以下内容:

从:

  "environmentSource": "environments/environment.ts",
  "environments": {
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts"
  }

至:

  "environments": {
    "source": "environments/environment.ts",
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts"
  }

0

在升级到最新版本之前,我总是使用以下命令。如果用于Ubuntu前缀:“ sudo”

npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli@latest

0
 $ npm uninstall -g angular-cli 
 $ npm cache clean 
 $ npm install -g angular-cli


-2

简单的解决方法,继续在你的项目中工作的意见线25node_modules /角CLI /斌/ NG

// Version.assertPostWebpackVersion();

直到正确固定为止。


1
使用npm uninstall -g angular-clI是更好的选择。
Praveen Rana
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.