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 相关文章推荐
如何实现JS函数的重载
Sep 22 Javascript
javascript 全选与全取消功能的实现代码
Dec 23 Javascript
JS图片无缝滚动(简单利于使用)
Jun 17 Javascript
JavaScript实现可拖拽的拖动层Div实例
Aug 05 Javascript
浅谈JavaScript 标准对象
Jun 02 Javascript
javacript获取当前屏幕大小
Jun 04 Javascript
通过JS和PHP两种方法判断用户请求时使用的浏览器类型
Sep 01 Javascript
angular $watch 一个变量的变化(实例讲解)
Aug 02 Javascript
AngularJS中table表格基本操作示例
Oct 10 Javascript
jquery+ajaxform+springboot控件实现数据更新功能
Jan 22 jQuery
微信小程序scroll-view实现字幕滚动
Jul 14 Javascript
JavaScript实现简单动态表格
Dec 02 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微信支付通知的处理方式
2014/05/25 PHP
深入分析PHP优化及注意事项
2016/07/04 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
2017/01/20 PHP
ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
2017/06/09 PHP
laravel-admin的多级联动方法
2019/09/30 PHP
js 文件引入实现代码
2010/04/23 Javascript
通过jQuery源码学习javascript(二)
2012/12/27 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
js实现延迟加载的方法
2015/06/24 Javascript
JS Select下拉框(支持输入模糊查询)
2017/02/04 Javascript
微信小程序中post方法与get方法的封装
2017/09/26 Javascript
详解react阻止无效重渲染的多种方式
2018/12/11 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
Python中使用hashlib模块处理算法的教程
2015/04/28 Python
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
深入浅出学习python装饰器
2017/09/29 Python
python中abs&amp;map&amp;reduce简介
2018/02/20 Python
如何安装2019Pycharm最新版本(详细教程)
2019/09/26 Python
Python 读取 YUV(NV12) 视频文件实例
2019/12/09 Python
pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)
2020/01/18 Python
解决pytorch-yolov3 train 报错的问题
2020/02/18 Python
python在一个范围内取随机数的简单实例
2020/08/16 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
python 模块导入问题汇总
2021/02/01 Python
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
英国赛车、汽车改装和摩托车零件购物网站:Demon Tweeks
2018/10/29 全球购物
ProForm英国站点:健身房和健身器材网上商店
2019/06/05 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
院药学专业个人求职信
2013/09/21 职场文书
党支部公开承诺书
2014/03/28 职场文书
高中学生评语大全
2014/04/25 职场文书
志愿者活动总结
2014/04/28 职场文书
乡镇平安建设汇报材料
2014/08/25 职场文书
清洁工岗位职责
2015/02/13 职场文书
部门经理助理岗位职责
2015/04/13 职场文书