【问题标题】:Migration path for AngularJS 1.2AngularJS 1.2 的迁移路径
【发布时间】:2013-08-21 00:52:36
【问题描述】:

我使用 AngularJS 1.0.7 编写了一个应用程序。我想迁移到 AngularJS 1.2。什么是迁移路径(迁移时我可能需要解决哪些问题)?

【问题讨论】:

  • 你的意思是 AngularJS 1.2.0?迁移路径是什么意思?网址?
  • 对,版本 1.2.0。迁移路径意味着我应该怎么做才能将我的项目迁移到 1.2(代码的哪一部分可能被破坏等)

标签: javascript angularjs


【解决方案1】:

Angular 团队在这里整理了一份非常全面的 1.x 到 2.0 迁移指南:http://docs.angularjs.org/guide/migration

控制台中记录的异常也得到了极大的改进。它们现在包含指向错误参考手册的链接,其中包含异常的详细说明以及如何纠正它。你可以在这里找到错误手册:http://docs.angularjs.org/error

【讨论】:

    【解决方案2】:

    没有从 1.0.7 迁移到 1.2 的官方指南,但我能找到的最好的东西是 angularJS 版本的变更日志:https://github.com/angular/angular.js/blob/master/CHANGELOG.md

    他们注意到了新版本中可能出现的关键变化,因此您可以对其进行研究。

    【讨论】:

      【解决方案3】:

      您可能需要处理的最大变化是路由:现在有一个单独的模块来处理路由,就像angular-resource 已经分开一样。创建应用程序时,您需要加载单独的 angular-route.js 文件并将 ngRoute 声明为依赖项。在你这样做之前,你的应用程序可能会被破坏。但这是我面临的唯一主要障碍。 (我听说我们应该期待这种趋势继续下去,因为他们将 Angular 分解成更小、更模块化的块,这样人们就可以拿走他们需要的东西,而跳过他们不需要的东西。)

      除此之外,还有大量新功能,例如动画模块、一堆新指令和一些不错的新文档。但是我还不知道您需要“迁移”的其他任何东西,除非您已经在 1.1.x 分支上实现了一些新功能。 (FWIW,我在我的blog 上收集了一些关于这些东西的更多细节。)

      【讨论】:

      • 我还将与 $resource 相关的更改添加到 重要 更改:“资源方法返回承诺”,“资源承诺通过资源实例解决”。无论如何,迁移指南似乎是最好的参考。
      • 我刚刚注意到这是一个很棒的评论。谢谢。我写这篇文章的时候还很早,官方的迁移指南在很大程度上胜过我的卑微努力。
      【解决方案4】:

      我在分享以前的观点,但在将 AngularJS 迁移到 Angular 时也会添加以下几点:

      1. 避免使用 Angular 模板引擎,尤其是在渲染服务器端模板时。

      2. 删除所有不适合 Angular 的过时概念(之前提到的 $rootScope 和 $compile 等)。

      3. 不要利用原生 DOM API 与 HTML 元素交互。

      您可以查看 Angular 社区的官方文档 - https://angular.io/guide/upgrade#upgrading-with-ngupgrade 或使用此 practical AngularJS guide

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-11-10
        • 2017-12-18
        • 2015-09-28
        • 1970-01-01
        • 2021-08-30
        • 1970-01-01
        • 2020-04-29
        • 2018-10-22
        相关资源
        最近更新 更多