写点什么

AngularJS 2.0 细节披露

  • 2014-11-02
  • 本文字数:1630 字

    阅读完需:约 5 分钟

上周在巴黎举行的 ng-europe 大会上,Angular 团队为与会者介绍了即将到来的 AngularJS 2.0 版本的细节。新版本对 1.x 版本进行了重大的颠覆,当前还没有任何迁移指南,此外它还是基于一个名为 AtScript 的新语言进行开发的。

对于熟悉 Angular 1.X 版本的开发者来说,他们将看到一个完全不同的框架,并且必须学习一种新的架构。在一堂关于版本 2.0 的变更的讲座中,Igor Minar 和 Tobias Bosch 介绍了新的模板语法:

复制代码
<input type="text" [value]="firstName">
<button (click)="addPerson()">Add</button>

这种新语法将数据绑定到元素的属性(property)上,而不是特性(attribute)上。这就允许你使用以下语法:

<input type="checkbox" [checked]="someProperty">看上去类似于标准的 HTML,但这个复选框元素不会暴露出 checked 特性。新的模板引擎将数据绑定到元素的属性上,即使这些属性并非由 DOM 所暴露出的特性。

与新架构引起的其它剧变相比,新的模板语法只是一个相对较小的改动。与会者之一的 Michael Bromley 描述了一些新版本的一些破坏性改动,版本 2.0 取消了 1.X 中的以下概念

  • 控制器(Controller)
  • (Directive 定义对象)
  • $scope
  • angular.module
  • jqLite

关于 jqLite 的取消,Igor 是这样说的:

在 2.0 中,我们不会在框架中使用任何 DOM 的封装了,而是直接和原始的 DOM 打交道。自从我们启动项目以来,DOM 本身已经得到了很大的改善,因此我们不再需要一个兼容层来帮助我们应付跨浏览器的问题了。所以我们可以直接操作原始的 DOM。不过如果你想要使用 jQuery,在你的组件中应用 jQuery,那也完全没问题。

2.0 版本的一个目标是改善 Angular 应用的开发体验,在第 2 天的主题演讲上,AngularJS 之父 Miško Hevery 描述了如何通过使用 AtScript 来实现这一目标。

AtScript 是 TypeScript 的一个超集,后者是由微软创建的一门语言。TypeScript 为 JavaScript 加入了类型,而 AtScript 进一步扩展了这一思想,它为类型加入了标注与动态注入。

标注允许开发者为某个类加入“表达意图”的能力。因此,无需通过模板代码的方式创建自定义 directive,开发者可以创建一个类,并告诉 AngularJS“这是一个 directive”。而动态注入的能力允许框架在运行时检查类型信息。

不过,AtScript 的使用是可选的,开发 Angular 2.0 应用并不一定要使用 AtScript。Miško 说道:由于现在的社区和类库都是使用纯 JavaScript 开发的,因此不强迫 AtScript 的使用是非常重要的目标。而由于 AtScript 可以直接编译为 EcmaScript 5(ES5),因此开发者可以直接编写 Angular 2.0。

在一次问答讲座上,开发者们问道 Angular 1.3 还将获得多长时间的支持。Brad Green 是这样回答的:

比较合理的期望是,我们大约还需要 1 年半至 2 年时间以发布 2.0 的最终版本,这段时间内我们还会为 1.3 提供缺陷修复及安全补丁。

Angular 团队还暗示他们没有为从 Angular 1.X 迁移到 2.0 提供迁移指南,但他们也不排除这种可能。目前还没有确切的发布日期,不过团队基本达成了共识,会在 2015 年终最终完成版本 2.0。

Brad Green 还表示,Angular 2.0 只会支持“最新的浏览器”,但没有指出确切的版本。他说他们的团队“在尝试基于未来的标准进行开发,而不是关注于现有的标准”。

开发者们对于这次重大变更的感觉可谓是五味陈杂。Hacker News 的用户 zak_mc_kracken 说道

虽然新版本依然叫做“Angular”,但它与之前的版本几乎没有多少相似之处,它完全是一个新的框架。一想到我对于 Angular 1 所掌握的全部知识都将成为过期的内容,就禁不住感到有点儿悲伤,但我也很期待对这个新的框架进行一番研究。如果它的革新性能够达到 Angular 1 的一半,那我就会从中获得很大的乐趣。

ng-europe 大会的视频曾被短暂地上传到 YouTube 上,但很快就被删除了。按照 ng-europe 的 Twitter 帐号的说法,“他们将会在之后的两周内上传所有的视频”。在那之前,开发者可以参考 Angular 2.0 设计文档,并且查看 GitHub 上的代码库

查看英文原文: AngularJS 2.0 Details Emerge

2014-11-02 05:0213075
用户头像

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

关注

评论

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

台达DOP-100系列触摸屏(LUA程序编写用户管理应用)

林建

lua 台达 触摸屏 用户管理 DOP-100

阿里P7大牛手把手教你!卧薪尝胆70天内推入职阿里

欢喜学安卓

android 程序员 面试 移动开发

Eureka可用性解读

赵镇

Eureka

阿里P9看了都说牛B!阿里巴巴史上最牛的分布式核心原理深度解析全彩手册

Java架构追梦

Java 阿里巴巴 架构 面试 分布式核心原理解析

阿里P7亲自讲解!Android大厂面试真题解析大全

欢喜学安卓

android 程序员 面试 移动开发

我写什么,你们决定

喵叔

从装大象中我们学会了什么设计模式

skow

Java 面试 后端 设计模式

【LeetCode】 H 指数 IIJava题解

Albert

算法 LeetCode 7月日更

全面解读自动驾驶数据存储关键

焱融科技

人工智能 自动驾驶 云计算 高性能 文件存储

夏令营|第五届埃文网络安全技能训练营火热报名中

郑州埃文科技

直击技术最前沿 | Amazon S3增加新的存档访问层

亚马逊云科技 (Amazon Web Services)

玩转Spring Boot Actuator集成,基操,勿六

白亦杨

Java

程序员的自我修养-用科学的方法提高交付质量

刘绍

程序员 软件工程 软件质量 TDD 单元测试

数牍科技亮相上海 AI 基金“AI 驱动企业转型” 应用场景战略合作仪式,隐私计算拓展AI应用疆域

英特尔中国研究院宋继强:AI技术已成为推动数字化转型的超级力量|WAIC 2021

E科讯

鸿蒙轻内核源码分析:掌握信号量使用差异

华为云开发者联盟

鸿蒙 数据结构 信号量 结构体 OpenHarmony

亚马逊云科技和 Verizon 利用专有 MEC 解决方案扩大 5G 合作

亚马逊云科技 (Amazon Web Services)

架构实战营模块8作业

eoeoeo

架构实战营

由浅入深C A S

程序猿阿星

CAS 自旋锁

Go 学习笔记之 函数

架构精进之路

Go 语言 7月日更

10万QPS,K6、Gatling和FunTester对比测试

FunTester

性能测试 接口测试 测试框架 压力测试 测试开发

工商银行:应用多k8s集群管理及容灾实践

华为云开发者联盟

容器 多云 工商银行 k8s集群 Karmada

理解Linux 终端、终端模拟器和伪终端

mazhen

Linux Shell SSH Linux Kenel

Mtail导致Nginx报警延迟

BUG侦探

运维 监控 日志

全美第四大无线运营商 DISH 和亚马逊云科技开展战略合作

亚马逊云科技 (Amazon Web Services)

互联网产品经理之需求的一生

路边水果摊

产品经理

细说.NET 缓存

喵叔

7月日更

铂金10:能工巧匠-ThreadLocal如何为线程打造私有数据空间

MetaThoughts

Java 后端 多线程 并发

云图说|ASM灰度发布,让服务发布变得更敏捷、更安全

华为云开发者联盟

灰度发布 application 云图说 应用服务网格服务 Service Mesh (ASM)

详解 nebula 2.0 性能测试和 nebula-importer 数据导入调优

NebulaGraph

数据库 开源 图数据库

FIL币最新价格怎么样?FIL币最新消息是什么?

AngularJS 2.0细节披露_语言 & 开发_David Iffland_InfoQ精选文章