【问题标题】:migrating from Angular 6 to Angular 7从 Angular 6 迁移到 Angular 7
【发布时间】:2019-03-26 23:03:14
【问题描述】:

我最近将我的 Angular 4 应用升级到 Angular 6,现在想升级到 Angular 7。根据下面的文章,运行命令以下命令应该不会超过 10 分钟即可升级。

ng 更新 @angular/cli @angular/core

https://blog.angular.io/version-7-of-angular-cli-prompts-virtual-scroll-drag-and-drop-and-more-c594e22e7b8c

运行此命令后,我在命令提示符上没有看到任何情况。没有错误。有人能告诉我为什么会这样吗

【问题讨论】:

标签: angular angular7


【解决方案1】:

我已使用以下方法将 6 更新到 7:

角度依赖

   npm install @angular/animations@latest @angular/common@latest @angular/compiler@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest --save

Angular 开发依赖项

  npm install @angular-devkit/build-angular@latest @angular/compiler-cli@latest @angular/cli@latest @angular/language-service@latest --save-dev

依赖关系; Core-js 和 Zone.js

npm install core-js@latest zone.js@latest --save

开发依赖;类型、codelyzer、因果报应工具、jasmine、量角器和 tslint

npm install @types/jasmine@latest @types/node@latest codelyzer@latest karma@latest karma-chrome-launcher@latest karma-cli@latest karma-jasmine@latest karma-jasmine-html-reporter@latest jasmine-core@latest jasmine-spec-reporter@latest protractor@latest tslint@latest --save-dev

TypeScript 3+ 新版本

npm install typescript@latest --save-dev

RxJS 最新版本 6+

npm install rxjs@latest rxjs-compat@latest --save

还有:

npm install rxjs-tslint@latest --save-dev

最新版本 4+ 的 Webpack

npm install webpack@latest --save-dev

source

【讨论】:

    【解决方案2】:

    角度 6.1 到 7 的迁移过程

    为了从 Angular 6.1 正确升级到 Angular 7,您必须遵循以下步骤:

    警告:请检查您导入的所有模块是否与 Angular 7 兼容,如有必要,请升级它们。

    升级到 Angular 7 之前:

    1. 将 HttpModule 导入更改为 HttpClientModule (import {HttpClientModule} from '@angular/common/http';)

    2. 将 Http 导入(如果有)更改为 import {HttpClient} from '@angular/common/http';

    不要忘记删除所有 JSON.parse(response),因为您不再需要使用 HttpClient 执行此操作

    1. 如果您使用的是 RXjs,则必须删除 RXjs 6 旧的依赖项。不用担心,您可以运行以下脚本:

      npm install -g rxjs-tslint

      rxjs-5-to-6-migrate -p src/tsconfig.app.json

    您可能必须更新 typescript 才能成功迁移 rxjs: npm i -g 打字稿

    1. 卸载 rxjs-compat 模块(npm uninstall rxjs-compat)
    2. 如果您使用 Angular Service Worker,请将任何 versionedFiles 迁移到 files 数组。

    3. 将 Angular cli 更新到 v7:

      ng 更新@angular/cli

    4. 将 Angular Core 更新到 v7:

      ng 更新@angular/core

    5. 最后你必须升级 Angular 材质:

      ng 更新@angular/material

    【讨论】:

      【解决方案3】:

      在这里,您可以找到从任何版本更新到 Angular 7 的相关指南

      https://update.angular.io/

      或者您可以简单地在 CLI 中运行命令

        ng update --all
      

      【讨论】:

        【解决方案4】:

        你可以使用这个:

        https://update.angular.io

        选择您正在使用的版本,它将为您提供分步指南。

        【讨论】:

          【解决方案5】:

          ng-update 对我也不起作用 - 我通过使用 npm-check 更新所有软件包解决了这个问题,并手动解决了我遇到的一些错误。

          【讨论】:

            【解决方案6】:

            如果您像我一样只是将您的项目更新到最新版本,那么这些就是我自 Angular 6 以来的工作方式:

            在您的项目文件夹中打开控制台:If you type: ng update 然后您将收到以下消息:

                    We analyzed your package.json, there are some packages to update:
            
                      Name                               Version                  Command to update
                     --------------------------------------------------------------------------------
                      @angular/cli                       7.0.7 -> 7.2.2           ng update @angular/cli
                      @angular/core                      7.0.4 -> 7.2.1           ng update @angular/core
            
            There might be additional packages that are outdated.
                Run "ng update --all" to try to update all at the same time.
            

            所以我通常直接去做:

            ng update --all

            终于可以检查你的新版本了:

            ng version
            
            Angular CLI: 7.2.2
            Node: 8.12.0
            OS: win32 x64
            Angular: 7.2.1
            ... animations, common, compiler, compiler-cli, core, forms
            ... http, language-service, platform-browser
            ... platform-browser-dynamic, router
            
            Package                           Version
            -----------------------------------------------------------
            @angular-devkit/architect         0.12.2
            @angular-devkit/build-angular     0.12.2
            @angular-devkit/build-optimizer   0.12.2
            @angular-devkit/build-webpack     0.12.2
            @angular-devkit/core              7.2.2
            @angular-devkit/schematics        7.2.2
            @angular/cli                      7.2.2
            @ngtools/webpack                  7.2.2
            @schematics/angular               7.2.2
            @schematics/update                0.12.2
            rxjs                              6.3.3
            typescript                        3.2.4
            webpack                           4.28.4
            

            【讨论】:

              猜你喜欢
              • 2018-10-18
              • 2023-04-08
              • 2018-10-18
              • 2019-05-18
              • 2020-06-15
              • 1970-01-01
              • 2019-09-09
              • 1970-01-01
              • 2019-01-11
              相关资源
              最近更新 更多