【发布时间】:2023-02-16 05:37:07
【问题描述】:
我最初使用 angularJs 库而不是 cli 构建我的网络应用程序。我正在尝试双启动或迁移到 angular2,但似乎无法找到任何合适的方法来进行迁移而不必从头开始重写我的代码。
我尝试查看角度文档 Official Guide1 和 official guide2,但他们解释了最初在 angularJs 中使用 cli,但我的 Web 应用程序不是使用 cli 构建的,而是使用库下载构建的。
我也尝试关注this guide,但它仍然基于从 angularjs cli 迁移到 angular cli。
有人可以指出一个链接或帮助我以最佳方式将我的 angularJS 库迁移到 angular cli 或双启动的最佳解决方案。
另外,是否可以下载角度 1 中的角度 2 库?
【问题讨论】:
-
与 ng-upgrade 并排设置和/或从 AngularJS 迁移到现代 Angular 不仅特定于每个项目,而且是一个复杂的过程。您不太可能获得有关如何迁移特定解决方案的分步指南。对于除了最简单的应用程序之外的任何应用程序,实际上都没有简单的路径。您将需要熟悉 AngularJS 和 Angular 才能完成任何类型的升级。
-
还要回答您的其他问题:不,您不能下载 ng2 并作为内联脚本运行,该框架依赖于 esmodules、tscompilation 和 webpack。
-
@MarkClark 感谢您的详细输入。我的代码库很大,重写它需要很长时间。希望有一种简单的方法来迁移或双启动。我将感谢对此问题的更多投入
-
IIRC,您可以并行运行而无需进行完整的 ngUpgrade 准备。问题是这条路径意味着这两个应用程序无法相互交谈。您可以通过包含两个单独的根组件来实现这一点,一个用于 angularJS,另一个用于 ng2+。它不是受支持的配置,也不推荐,但在技术上是可行的。另外,我不记得 ngUpgrade 需要 AngularJS CLI,只是较新的 ng2+ 应用程序需要 CLI。
-
你是对的,不需要 anugular CLI,但文档假定你的 ng1 应用程序是使用 CLI 开发的,并且所有说明都基于 CLI。如果库最初是从 angular1 下载的,则与使用 CLI 时不同。使用 ng1 使用该库,您实际上不需要获取/需要 package.json 文件,但使用 CLI 即可。我真的需要 ng1 和 neg2 互相交谈,然后逐渐将 ng1 的文件更改为 ng2。考虑到代码库很大,一次性全部完成会花费我很多时间。
标签: angularjs angular-library angular-migration