通过混合应用程序从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上将只剩下一行。