如何降级Angular版本?

问题描述 投票:0回答:2

我当前的版本是13。我需要版本12。

我尝试了以下命令:

  • ng--版本
  • npm uninstall -g @angular/cli
  • npm 缓存清理 --force
  • npm install -g @angular/cli@12
  • ng--版本

版本仍然显示13。我该如何解决这个问题?

angular version downgrade
2个回答
6
投票

您需要做一些事情才能安全降级。

  1. 在此处咨询您需要的nodejs版本和Angular cli。
  2. 创建一个新的 Angular 项目仅供参考。
从基本文件夹中本地安装 cli 的 Angular 12.x 兼容版本:

npm install @angular/[email protected]
将添加 
package.json

文件,向其中添加

ng
脚本:
{
  "scripts": {
    "ng": "ng"
  },
  "dependencies": {
    "@angular/cli": "12.0"
  }
}

使用本地 Angular/cli 安装 Angular(使用默认选项):

npm run ng new ref-app

现在从您的应用程序文件夹中:

删除node_modules文件夹
  1. 打开应用程序的
  2. package.json
  3. 文件,并将所有版本的 @angular/xxx 包替换为您可以在第一步中在 ref-app 的
    package.json
    文件中找到的版本
    奔跑
  4. npm install
  5. 
    
  6. 现阶段,Angular 包肯定会降级到 v 12.0; 现在,如果您在应用程序上运行升级脚本(以将其升级到 v13),您可能必须修复您的应用程序。在此很难提供建议,因为每个应用程序都会遇到不同的降级问题。

最后,如果您希望您的全局“ng”也降级:

卸载它:
  1. npm uninstall -g @angular/cli
安装到目标版本
  1. npm install -g @angular/[email protected]


1
投票

提交更改,这样你就有了一个检查点。
  1. 删除
  2. project/node_modules
  3. 删除
  4. project/package-lock.json
  5. 修改
  6. package.json
  7. @angular
    及相关包'。
    运行
  8. npm i
  9. 进行安装。
    确认应用程序编译没有错误。跟进
  10. npm audit
  11. 以发现建议。
    
    
  12. 所有 Angular 包都遵循主版本分母 - 这意味着如果您想降级到 Angular 15 -> Angular 14,所有
@angular

包都应以 14 开头。值得庆幸的是,大多数较大、知名的包往往遵循

e.g. @ngrx
模式。我们使用插入符
^
来安装最新的次要版本。
来自

package.json

"dependencies": {
    "@angular/animations": "^15.0.4",
    "@angular/cdk": "^15.0.4",
    "@angular/common": "^15.0.4",
    "@angular/compiler": "^15.0.4",
    "@angular/forms": "^15.0.4",
    "@angular/material": "^15.0.0",
    "@ngrx/effects": "^15.1.0",
    "@ngrx/store-devtools": "^15.1.0",
...

package.json

"dependencies": {
    "@angular/animations": "^14.0.0",
    "@angular/cdk": "^14.0.0",
    "@angular/common": "^14.0.0",
    "@angular/compiler": "^14.0.0",
    "@angular/forms": "^14.0.0",
    "@angular/material": "^14.0.0",
    "@ngrx/effects": "^14.0.0",
    "@ngrx/store-devtools": "^14.0.0"
...

© www.soinside.com 2019 - 2024. All rights reserved.