通过混合应用程序从AngularJS迁移到Angular7

通过混合应用程序从AngularJS迁移到Angular7



任务不是最容易的,但可行的。

我搬到新公司时遇到了她。

可行的事实可以在手册中找到。

它是专门为简化过渡而创建的,而无需创建新项目并从一开始就重写每个组件。

正如开发人员所设想的那样,我们的项目应该同时在AngularJS和新版本的Angular上开始工作,并逐步替换代码。

因此,我决定这样做。

该指南非常详细,但基本上包含理论部分。

对于以前主要处理Vue的人来说,立即了解组织框架的复杂性并不是那么简单。

我的主要困难是AngularJS和Angular7上项目的结构不同。

因此,需要手动重写所有依赖项,服务和组件。

实际上,与这种方法的任何混合都失去了其意义,因为在任何情况下都必须完全重写该应用程序。

所以我在一开始就做了,没有找到更便宜的方法。

但是,有一个更好的选择。

在这里,我发现了很多有用的东西。

我将详细描述我的所作所为。

您需要创建一个新项目。

在Node.js中:

npm install -g @angular/cli

全局安装Angular。

接下来,您需要为该应用程序创建一个文件夹,然后通过Node.js进入该文件夹。

在此处找到所需文件夹可能需要的主要命令:

cd _cd ..返回到上面的目录。

因此,找到项目文件夹后,您需要在其中创建一个项目。

在Node.js中,我们编写:

ng new _

在创建项目的过程中,将为应用程序提供几个选项,您需要在其中指定所需的参数。

创建应用程序后,可以使用以下命令在浏览器中将其打开:

ng serve --open

但是,还没有打开的东西。

现在,您需要安装AngularJS和Angular都必需的依赖项:

npm install --save @angular/upgrade

从现在开始,该应用程序支持这两种框架。

现在打开旧项目,查找package.json文件。

它列出了应用程序运行所需的所有依赖关系。

它们需要手动安装。

例如:

npm install --save angular @uirouter/angularjs

此步骤之后,您可以将所有全局样式转移到新的应用程序。

现在,我们从应用程序传输所有文件。

对于以上指导,我们走得更远。

更改根组件的名称。

在app.module.ts中添加以下行:

 import * as angular from 'angular'; 

手册中没有对此进行说明,但如果没有它,则无法实现杂交。

现在我们有一个应用程序,理论上应该是混合的。

实际上,在此阶段可能会发生各种错误,主要与依赖关系有关,我将在另一篇文章中进行介绍。

如果没有出现,请继续进行操作,并在AngularJS模块之后将模块更改为Angular所需的版本。

本文提供了两种框架代码之间主要区别的出色视觉呈现。

一步一步,AngularJS上将只剩下一行。

Source: https://habr.com/ru/post/zh-CN484862/


All Articles