AICon 深圳站聚焦 Agent 技术、应用与生态,大咖分享实战干货 了解详情
写点什么

Angular 提供了改进后的迁移路径,包括 ng-upgrade 组件

  • 2015-09-05
  • 本文字数:990 字

    阅读完需:约 3 分钟

Angular 团队刚刚发布了从 Angular 1 平滑地迁移至 Angular 2 这一计划的更多信息

ng-conf 2015 大会上,Angular 团队表示,新的路由功能可以进行增量式的升级,每次更新一个视图。在这篇博客文章中,Brad Green 表示:“从我们收到的反馈来看,虽然人们认可新的路由功能确实能够增量式升级,但这种增量做得还不够。因此,我们对迁移计划进行了重新审视与设计……”

新的迁移系统的强大能力来自于一个新的组件,名为 ng-upgrade,它能够处理以下这些方面的交互:

  • 依赖注入
  • 组件嵌套
  • Transclusion (嵌入)
  • 变更检测

一旦 ng-upgrade 的工作完成,开发者就能够混合并搭配使用 Angular 1 与 2 的服务、组件和视图。Green 说道:“ng-upgrade 库会自动让 Angular 1 中的可注入对象在 Angular 2 中可用。这也意味着你为 Angular 1 应用所设计的服务可以任意地注入 Angular 2 的组件或服务中了。”
与其让新版本通过一种不完善的方式模拟旧版本中的行为,更好的方式是让两个版本的引擎各自执行对应的代码。

最终结果就是,开发者能够逐步地将某个应用从 Angular 1 迁移至 Angular 2 中。

不过,新的路由功能也并未停止开发。Green 向 InfoQ 透露,在即将发布的一份开发者指南中,其中会引用最新的路由API 文档

这份迁移计划对于那些还在担心是否要继续编写新的Angular 1 项目的开发者来说是一个好消息。用户escobar 在 Hacker News 讨论版中就表示,他认为此次的迁移计划是一个良好的举措:

我在工作中的几个新应用中使用了 Angular
2 以进行评估,但很快就放弃它了,因为直至今日为止,新版本的迁移路径始终很不明确。如果缺少迁移路径,在眼下这一时刻选择在新应用中使用 v1 有些愚蠢,但 v2 又完全没有为在生产环境中使用做好准备。

Green 表示,他们正在计划撰写关于迁移的更多博客文章,包括一个详细的指南以及代码示例。Angular 团队也分享了一份设计文档,其中描述了有关新的迁移计划背后所涉及的策略的更多细节。新的 ng-upgrade 组件目前还不可用,但应当会随着 Angular 2 Beta 版本一起推出。只是目前还没有 Beta 版本推出的明确日期,Green 向 InfoQ 表示,在发布 Beta 版本之前,他们必须完成以下工作:

  • 在 4 周时间内不再出现破坏性的变更
  • 完成“语法糖”,让核心 API 与工具的使用体验更佳
  • 完成开发者指南的大约前 20 个部分,目前已经完成了其中的 4 个部分

查看英文原文: Angular Offers Refined Migration Path with ng-upgrade

2015-09-05 19:002235
用户头像

发布了 428 篇内容, 共 193.2 次阅读, 收获喜欢 39 次。

关注

评论

发布
暂无评论
发现更多内容

七、连Pycharm都不知道怎么用,学什么Python

刘润森

Python

代码防御性编程的十条技巧

C语言与CPP编程

程序员 编程语言 C语言 编译器、程序语言、CPU

九种查找算法

C语言与CPP编程

面试 算法 编程语言 C语言 编译器、程序语言、CPU

十、给小白看的第三篇Python基础教程

刘润森

Python

架构1期第二周作业

FG佳

架构师训练营 1 期 -- 第二周作业

曾彪彪

极客大学架构师训练营

第二课框架设计课后作业

Geek_michael

四、学编程语言前,不了解Git,怎么入坑

刘润森

Python

八、给小白看的第一篇Python基础教程

刘润森

Python

前言、Python是真的火,还是炒得火?来看看它的前世和发展

刘润森

Python

C语言C++中assert的用法

C语言与CPP编程

程序员 编程语言 C语言

学生成绩管理系统案例

C语言与CPP编程

编程语言 C语言 编译器、程序语言、CPU

「架构师训练营第1期」第二周作业

张国荣

极客大学架构师训练营

第二周学习总结

龙卷风

极客大学架构师训练营

数字与能源,交织成新基建的摩比斯环

脑极体

架构师训练营第二周命题作业

成长者

极客大学架构师训练营

六、乘胜追击,将剩下的Git知识点搞定

刘润森

五种简单高效的拆分用户故事的方法

Bruce Talk

敏捷 Agile 用户故事 User Story Product Owner

架构师训练营 Week2 作业

lggl

极客大学架构师训练营 作业

三、新手Jupyter不会用,我十招教你盘她

刘润森

Python

架构师训练营第 1 期 - 第二周 - 作业提交

Todd-Lee

架构师 极客大学架构师训练营

架构训练营 -week2- 学习总结

于成龙

面向对象 架构训练营

[架构师训练营第1期]第二周命题作业

猫切切切切切

极客大学架构师训练营

高并发下如何缩短响应时间

架构师修行之路

微服务 高并发优化

架构师训练营第一期 - week2 - 命题作业

谭明华

极客大学架构师训练营

一、搭建Python环境和安装Pycharm

刘润森

Python

五、开始Github和码云之旅,新手如何上路

刘润森

Python

十大经典排序算法(动态演示+代码)

C语言与CPP编程

面试 算法 编程语言 编译器、程序语言、CPU

二、搭建Jupyter Notebook环境

刘润森

Python

字符串操作的全面总结

C语言与CPP编程

编程语言 C语言 编译器、程序语言、CPU 字符串

做好分库分表其实很难之一

架构师修行之路

微服务 分库分表

Angular提供了改进后的迁移路径,包括ng-upgrade组件_JavaScript_David Iffland_InfoQ精选文章