Angular发布1.5正式版,专注于向Angular 2的过渡


Posted in Javascript onFebruary 18, 2016

Angular团队最近发布了Angular 1.5的正式版,该版本实现了一次重大的升级,它让仍在使用1.X版本的开发者将能够更容易地过渡到Angular 2的开发。

Pete Bacon Darwin在此次发布 声明 的博客文章中写道,这次发布的目的是“改进Angular 2的升级路径。我们在这次发布中引入了一些新的特性,让开发者编写的Angular 1应用更接近于在Angular 2中应用的结构。”

此次发布中,新的module.component()辅助方法是向Angular 2进行过渡的最大变更。通过使用该方法,开发者就不必再遵循传统的directive定义对象风格编写directive了。如果读者已经熟悉Angular 2的写法,就应当注意到这种相似性。在文章中,作者通过一个示例表现了定义一个新component的方法:

myModule.component('myComponent', {
template: '<h1>Hello {{ $ctrl.getFullName() }}</h1>',
bindings: { firstName: '<', lastName: '<' },
controller: function() {
this.getFullName = function() {
return this.firstName + ' ' + this.lastName;
};
}
});

在component出现之前,开发者通常只能使用directive,或是通过对controller的非常规使用才能够实现某些场景。但这并不是说component就将完全取代directive的作用了,比方说component就无法用于操作DOM,并且所有的component都必须通过自定义的HTML元素激活,而不支持通过元素的属性触发。按照以上方式定义的component可通过以下代码使用:

<my-component first-name="'Alan'" last-name="'Rickman'"></my-component>

新的 component指南 对于传统的directive与component之间的区别提供了更完整的说明。

单向绑定

生命周期钩子

绑定至必需的directive

支持多个slot的transclusion

默认transclusion内容

目前在使用1.4版本的开发者可以阅读 迁移指南 以了解迁移时需要进行哪些必要的变更,因为1.5版本中引入了一些破坏性的变更。

在可预见的一段时间内,1.5版本应当是最大的一次变更了。当InfoQ向Bacon Darwin问及1.X版本将何去何从时,他是这样回答的:

我们还没有开始计划Angular 1的下一次发布周期。由于离Angular 2正式发布的日期已经越来越近了,因此如果我们继续开发Angular 1,那么也会尽量使它更接近于Angular 2。如果为了实现这一点而必须引入破坏性的变更,那么可以预计1.6版本的出现。同时,我们还将继续Angular 1.5.x版本的开发,提供bug的修复以及一些较小的特性。总之,这与我们让Angular 1.X更易于迁移至Angular 2的目标并不冲突。

新的component router特性应当在本周的稍晚时间发布。感兴趣的朋友敬请关注三水点靠木网站!

Javascript 相关文章推荐
javascript demo 基本技巧
Dec 18 Javascript
javascript 随机展示头像实现代码
Dec 06 Javascript
用js代码和插件实现wordpress雪花飘落效果的四种方法
Dec 15 Javascript
详细解读JavaScript的跨浏览器事件处理
Aug 12 Javascript
jQuery Validation Plugin验证插件手动验证
Jan 26 Javascript
基于bootstrap风格的弹框插件
Dec 28 Javascript
详解Node.js中exports和module.exports的区别
Apr 19 Javascript
Vue实现web分页组件详解
Nov 28 Javascript
Vue手把手教你撸一个 beforeEnter 钩子函数
Apr 24 Javascript
vue-cli3 karma单元测试的实现
Jan 18 Javascript
解决echarts图表使用v-show控制图表显示不全的问题
Jul 19 Javascript
一文了解JavaScript用Element Traversal新属性遍历子元素
Nov 27 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 #Javascript
javascript每日必学之条件分支
Feb 17 #Javascript
JavaScipt中栈的实现方法
Feb 17 #Javascript
Bootstrap入门书籍之(五)导航条、分页导航
Feb 17 #Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
Feb 17 #Javascript
Bootstrap入门书籍之(三)栅格系统
Feb 17 #Javascript
Bootstrap入门书籍之(一)排版
Feb 17 #Javascript
You might like
PHP打印输出函数汇总
2016/08/28 PHP
php fread读取文件注意事项
2016/09/24 PHP
JavaScript模板入门介绍
2012/09/26 Javascript
Javascript实现滚动图片新闻的实例代码
2013/11/27 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
jquery插件推荐 jquery.cookie
2014/11/09 Javascript
通过点击jqgrid表格弹出需要的表格数据
2015/12/02 Javascript
给angular加上动画效遇到的问题总结
2016/02/17 Javascript
jQuery使用$.each遍历json数组的简单实现方法
2016/04/18 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
BootStrap表单宽度设置方法
2017/03/10 Javascript
纯js实现的积木(div层)拖动功能示例
2017/07/19 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
js中apply()和call()的区别与用法实例分析
2018/08/14 Javascript
小程序外卖订单界面的示例代码
2019/12/30 Javascript
JavaScript如何实现图片处理与合成
2020/05/29 Javascript
JavaScript 获取滚动条位置并将页面滑动到锚点
2021/02/08 Javascript
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
python写的一个文本编辑器
2014/01/23 Python
利用Python批量提取Win10锁屏壁纸实战教程
2018/03/27 Python
Python 实现异步调用函数的示例讲解
2018/10/14 Python
django 实现手动存储文件到model的FileField
2020/03/30 Python
python中sympy库求常微分方程的用法
2020/04/28 Python
英国空调、除湿机和通风设备排名第一:Air Con Centre
2019/02/25 全球购物
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明
2012/12/05 面试题
如果一个类实现了多个接口但是这些接口有相同的方法名将会怎样
2013/06/16 面试题
JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
2013/07/02 面试题
Jdbc数据访问技术面试题
2012/03/30 面试题
高中生毕业学习总结的自我评价
2013/11/14 职场文书
园林设计专业毕业生求职信
2014/03/23 职场文书
宣传工作经验材料
2014/06/02 职场文书
Netflix《海贼王》真人版剧集多张片场照曝光
2022/04/04 日漫
Python中request的基本使用解决乱码问题
2022/04/12 Python
Ruby GDBM操作简介及数据存储原理
2022/04/19 Ruby