Angularjs 迁移到Angular2->;所需建议

Angularjs 迁移到Angular2->;所需建议,angularjs,angular,Angularjs,Angular,一些背景: 我参与了一个巨大的、非常动态的、可定制的Angular1 web应用程序的开发 由于它是如此巨大和动态,有吨的观察家在那里-4K在单一的看法,至少 正如所料,应用程序正遭受重大性能问题的困扰。如此大量的观察者使得应用程序加载和一般响应时间非常长 作为一个可能的解决方案,我正在考虑将几个“重”组件升级到Angular2,这样这些组件就可以在ng2框架中使用ng2更改跟踪,这要快得多 在阅读迁移时,我注意到这一段: 当我们降级角度2组件,然后从角度1使用它时,将使用角度1变化检测观察组件

一些背景:

我参与了一个巨大的、非常动态的、可定制的Angular1 web应用程序的开发

由于它是如此巨大和动态,有吨的观察家在那里-4K在单一的看法,至少

正如所料,应用程序正遭受重大性能问题的困扰。如此大量的观察者使得应用程序加载和一般响应时间非常长

作为一个可能的解决方案,我正在考虑将几个“重”组件升级到Angular2,这样这些组件就可以在ng2框架中使用ng2更改跟踪,这要快得多

在阅读迁移时,我注意到这一段:

当我们降级角度2组件,然后从角度1使用它时,将使用角度1变化检测观察组件的输入

在这一点上,我想得到建议,只是为了确保我做出了正确的决定:

由于我不打算一次转换整个应用程序,而是以增量方式(一个指令接一个指令)转换,我应该采取哪个方向来提高ng2的性能(例如ng2更改跟踪):

  • a。我是否应该“自底向上”迁移,例如顶级组件将
    保持ng1;而较低级别将转换为ng2,或
    • b。 “从上到下”迁移
就我个人而言,我更喜欢第一种选择(在我看来风险较小),但如果shell在将其内容转换为ng2的同时重新录制ng1,这是否意味着(根据文档),我将被迫在ng2组件内使用ng1更改跟踪机制?还是我弄错了

根据您的经验,哪种迁移方向证明自己更好


谢谢

所以我来这里参加聚会有点晚了。Angular团队提供的ngUpgrade工具绝对是一个非常棒的可行解决方案,但是我认为它将创建更多可能值得的工作(取决于应用程序的大小)

我想要的是一个模块化的过程,一次升级一个模块,而不是一次升级组件/服务。i、 假设你的1.x应用程序被分成多个模块,你可以开始重写第一个模块,例如“仪表板”模块或“收件箱”模块。我之前经历过这个过程,我们重写了应用程序的主页,一旦用户需要点击另一个页面,即“遗留代码”,url就会显示他们实际上已经进入了另一个应用程序。这样,我们在技术上有两个应用程序,但它们完全分开运行


如果您仍在考虑升级概念等,我一直在开发Angular 1.x,它可能会帮助您:)

我认为您首先应该自己进行实验。如果ngUpgrade/NGGRADE在您的情况下运行良好,在不了解所有细节的情况下很难判断。我看到过一些讨论,除了非常简单的示例之外,它对组件的效果不是很好,但我自己没有尝试过。你能回答这个问题吗