【问题标题】:How to migrate/upgrade from angularJs library to angular CLI如何从 angularJs 库迁移/升级到 angular CLI
【发布时间】:2023-02-16 05:37:07
【问题描述】:

我最初使用 angularJs 库而不是 cli 构建我的网络应用程序。我正在尝试双启动或迁移到 angular2,但似乎无法找到任何合适的方法来进行迁移而不必从头开始重写我的代码。

我尝试查看角度文档 Official Guide1official 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


【解决方案1】:

我对我所做的是按照Running angular1 and angular2 side by side上的说明进行操作

  • 我使用 angular CLI 创建了一个新的 angular 6 应用程序

  • 我在 src 目录下创建了一个名为 ng1 的文件夹

  • 将所有 angualr1 文件复制到创建的 ng1 目录中

  • 我将我对 index.html 的所有 angular1 JS 依赖项迁移到 scripts 下的 angular2 的 angular.json

    “脚本”:[ “src/ng1/part-to/your-javascript-directory/jquery.min.js” ]

  • 我还将index.html上的所有angular1 CS依赖项复制到styles下的angular2的angular.json

    “风格”:[ “源代码/样式.css”, ]

  • 我还在 angular2 angular.json 文件的 assets 部分添加了我之前创建的 ng1 目录

    “资产”:[ "src/favicon.ico", “来源/资产”, “src/ng1” ]

以上是准备你的 angular1 项目到 angular1 中的双船的基础。还有更多,但请按照我上面发布的链接上的说明进行操作,您的应用程序将同时运行。希望这有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-26
    • 2017-05-15
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多