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 相关文章推荐
一实用的实现table排序的Javascript类库
Sep 12 Javascript
15 个 JavaScript Web UI 库
May 19 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
May 08 Javascript
iframe的父子窗口之间的对象相互调用基本用法
Sep 03 Javascript
JavaScript小技巧整理
Dec 30 Javascript
JavaScript必知必会(九)function 说起 闭包问题
Jun 08 Javascript
关于使用js算总价的问题
Jun 23 Javascript
React Native如何消除启动时白屏的方法
Aug 08 Javascript
javascript 中模板方法单例的实现方法
Oct 17 Javascript
写给小白看的JavaScript异步
Nov 29 Javascript
vue2.0自定义指令示例代码详解
Apr 25 Javascript
微信小程序页面传多个参数跳转页面的实现方法
May 17 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
PHPMYADMIN 简明安装教程 推荐
2010/03/07 PHP
php学习笔记之 函数声明
2011/06/09 PHP
PHP_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法
2014/05/04 PHP
PHP 8新特性简介
2020/08/18 PHP
有趣的javascript数组定义方法
2010/09/10 Javascript
各情景下元素宽高的获取实现代码
2011/09/13 Javascript
JQuery入门—JQuery程序的代码风格详细介绍
2013/01/03 Javascript
用javascript实现自动输出网页文本
2015/07/30 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
Vue+element 解决浏览器自动填充记住的账号密码问题
2019/06/11 Javascript
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
python模块之time模块(实例讲解)
2017/09/13 Python
Python+selenium点击网页上指定坐标的实例
2019/07/05 Python
在django admin中添加自定义视图的例子
2019/07/26 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
关于django python manage.py startapp 应用名出错异常原因解析
2020/12/15 Python
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
Foot Locker澳洲官网:美国运动服和鞋类零售商
2019/10/11 全球购物
加拿大拼图大师:Puzzle Master
2020/12/28 全球购物
如何向接受结构参数的函数传入常数值
2016/02/17 面试题
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
高三自我鉴定
2013/10/23 职场文书
给男朋友的道歉信
2014/01/12 职场文书
银行办公室岗位职责
2014/03/10 职场文书
规划编制实施方案
2014/03/15 职场文书
教师职位说明书
2014/07/29 职场文书
群众路线个人剖析材料
2014/10/07 职场文书
2015年世界无烟日活动总结
2015/02/10 职场文书
导师鉴定意见
2015/06/05 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
python中%格式表达式实例用法
2021/06/18 Python
简单且有用的Python数据分析和机器学习代码
2021/07/02 Python
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
2021/11/01 MongoDB
Python采集股票数据并制作可视化柱状图
2022/04/04 Python