2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

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:0213342
用户头像

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

关注

评论

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

演示视频:Jira企业微信插件邀您一起迈入移动办公时代,高效处理Jira Issue

龙智—DevSecOps解决方案

Jira 企业微信

从热爱到深耕,全国Top10开源软件出品人手把手教你如何做开源

华为云开发者联盟

开源 华为云 华为云开发者联盟 企业号 4 月 PK 榜

Qz学算法-数据结构篇(表达式、递归)

浅辄

数据结构 三周年连更

解决流水线瓶颈、提升编码效率的五个方法(下篇)

龙智—DevSecOps解决方案

ci cicd 持续集成 CI/CD

常用内核架构

天翼云开发者社区

面试突击:MVCC 和间隙锁有什么区别?

Java 面试 MVCC

DevEco Studio 3.1 Beta新特性知多少

HarmonyOS开发者

HarmonyOS

爆肝了!阿里最新版的这份Spring Security源码手册,狂揽GitHub榜首

Java spring spring security

面试官:什么是双亲委派模型?

Spring Boot定时任务@Scheduled的多线程使用

Java Spring Boot 多线程 Scheduled

css-文字充电效果

格斗家不爱在外太空沉思

CSS css动画 三周年连更

小红书高时效推荐系统背后的技术升级

小红书技术REDtech

推荐 小红书

mysql 8.0 安装区别

追赶者

MySQL

Arctic 自动优化湖仓原理解析

网易数帆

数据湖 iceberg Arctic 湖仓一体

校园共享电动单车的积极作用!如何投?

共享电单车厂家

共享电动车厂家 校园共享电动车 共享电动单车投放

当推荐和搜索遇上大模型,会碰撞出什么样的火花

小红书技术REDtech

推荐 搜索 小红书

数字先锋| 乘“云”之势,天翼云助力长春市妇产医院步入智慧医疗新时代!

天翼云开发者社区

《挪威的森林》

后台技术汇

三周年连更

小米集团Jira实战:如何在高负载状态下保持Jira性能与运行稳定

龙智—DevSecOps解决方案

玩转云端| 真实模拟,即压即测,天翼云息壤性能测试PTS实践大揭秘!

天翼云开发者社区

共铸国云智领未来| 智慧医疗乘“云”而上!

天翼云开发者社区

led显示屏视频播放器的8大功能

Dylan

企业 视频 LED显示屏

Git推出大文件储存工具Git LFS,但它真的好用吗?

龙智—DevSecOps解决方案

git 版本控制 版本控制系统

非常全面的 SpringBoot 保姆级笔记,面面俱到,太牛了

Java Spring Boot

【等保测评】电力行业等保测评多久做一次?

行云管家

电力 过等保 等级测评

开启新时代,承接新使命,开放原子开源大赛OpenHarmony创新赛正式启航!

OpenHarmony开发者

OpenHarmony

创建本地yum仓库

天翼云开发者社区

国外顶级架构师编写2580页DDD领域驱动设计笔记,看到内容后破防了

Java 架构 领域驱动设计 DDD

日志服务运维观测能力,助力新零售容器化部署升级

云布道师

存储

玩转云端| 算力基础设施升级,看天翼云紫金DPU显身手!

天翼云开发者社区

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