写点什么

Angular4 现已发布

  • 2017-03-27
  • 本文字数:1746 字

    阅读完需:约 6 分钟

经历了 6 个 RC 版本之后,Angular 项目组终于在今天发布了新版——正式版 Angular 4.0.0

  • 这个版本不仅速度更快、体积更小,还对内置指令 NgFor 和 NgIf 以及模板的 source map 等功能进行了优化。
  • 同时,该版本向后兼容大多数应用中的 2.x.x 系列。
  • 新版本还优化了 View 引擎,改进后 AoT 生成的代码将减少约 60%,而且模板越复杂,所优化的代码量就越大。
  • Angular 将动画部分从 @angular/core 拆分出来,单独打包。将核心模块精简后,在不使用动画时产品中将不包含冗余的动画代码。如果需要动画,可使用相关功能自行导入。

项目地址: https://github.com/angular/angular/releases

新的特性

这次的正式版本带来的新特性如下:

优化了内置指令 nglf 和 ngFor

新版本中的模板对于绑定语法做了些修改,将支持开发者使用 if/else 类型的语法,并支持在展开 Observable(可观察对象)等代码中分配局部变量。

复制代码
<div *ngIf="userList | async as users; else loading">
  <user-profile *ngFor="let user of users; count as count" [user]="user">
  </user-profile>
<div>{{count}} total users</div>
</div>
<ng-template #loading>Loading...</ng-template>

Angular Universal 的服务器端渲染

Universal 本来只是一个社区主导型项目,允许开发者在服务器端运行 Angular,后被 Angular 官方集成。这也是集成之后 Universal 的首次发布,包含了过去数月中 Universal 团队的工作成果。目前大多功能已集成到 @angular/platform-server 模块中,点击这里可以查看Github 上的相关案例,或者Rob Wormald 的 Demo Repository

TypeScript 2.1 与 2.2 的兼容

Angular 的 TypeScript 目前已更新到 2.2 版本,一方面提高了 ngc 的速度,同时在应用中进行 type 检查时,体验也更优秀。当前版本向下兼容。

模板的源映射

目前如果模板出现错误,我们会生成源映射,以了解原始模板中的前因后果及背景环境。

升级到 4.0.0 版本

升级到最新版本非常简单,不过要确认一点:是否需要动画。大多情况下可用下面的命令来解决问题:

在 Linux/Mac 上: npm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@latest typescript@latest --save 在 Windows 上: npm install @angular/common@latest @angular/compiler@latest @angular/compiler-cli@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest @angular/animations@latest typescript@latest --save然后再运行常用的 ng serve 或者 npm start 命令,就完成了。

特殊情况下,如果开发者需要依赖动画 Animations,可在 root NgModule 中通过 @angular/platform-browser/animations 导入新的 BrowserAnimationsModule 模块,否则可能会遇到错误。不建议使用 @angular/core,请通过 import { trigger, state, style, transition, animate } from '@angular/animations’来导入。

为了方便大家升级,官方更贴心地推出了 Angular Update Guide 功能,点击可快速选择适合自己的升级方案。

为什么跳过 Angular 3?

根据 Angular 团队首席开发 Igor Minar 的说法:随着 Angular 2 的发布,Angular 团队引入了语义化版本控制规范,即:将语义化版本用三组数字来表示,按照 major.minor.patch 的顺序排列,如 2.3.1。

Patch 版本每周发布,通常只修复问题,不加入新的功能。Minor 版本每月发布,加入一些新的功能,但相对旧版本来说没有太大更改。Major 版本每半年发布一次,加入一些新功能,并可能带来一些重大更改。

之前最新的 Angular router 版本号是 3.3.0,而其它模块的版本号是 2.2.0,由于版本号不同步,团队计划将其同步,直接采用 4.0.0 作为新版的版本号。

由于 Angular 团队计划每半年发布一个主要(Major)版本,因此按计划 Angular 5 将于 2017 年 9 月发布。

原文链接: Angular 4.0.0 Now Available


感谢韩婷对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-03-27 19:005777

评论

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

用python爬取英语4级单词-hinter的单词来源

进基的小张

Python Python爬虫 英语4级单词

分享8款文档版本管理系统,助力团队高效协作

易成研发中心

企业必备的8款OKR工具软件,提升团队执行力

易成研发中心

如何选择OKR软件?这5款okr软件值得了解

易成研发中心

企业常用人事薪酬系统推荐:8家精选系统评测

易成研发中心

@技术人,我们京东见!

京东零售技术

中小企业如何保障5S管理有效落地

易成研发中心

企业管理

Lumoz TGE前的最佳机会,NFT助力提前解锁esMOZ

加密眼界

AI电商生图大模型商业开源

摹图

AI换装 AI生图 AI商拍 AI服饰设计 AI模特

深入探索 CnosDB 可观测性最佳实践:日志

CnosDB

时序数据库 tsdb 开源社区 大数据 开源 CnosDB

2024-11-30:质数的最大距离。用go语言,给定一个整数数组 nums,请找出两个(可以是相同的)质数在该数组中的下标之间的最大距离。 提示: nums的长度在[1,3*10^5]之间。 num

福大大架构师每日一题

福大大架构师每日一题

IM即时通讯基础入门:新手读者必看指南

BeeWorks

flstudio24如何设置成中文教程 flstudio24中文版免费下载

阿拉灯神丁

音乐制作 编曲宿主 FL Studio2024 FL水果

《Django 5 By Example》阅读笔记:p388-p454

codists

Python django

深入探索 CnosDB 可观测性最佳实践:Trace

CnosDB

时序数据库 tsdb 开源社区 大数据 开源 CnosDB

深入探索 CnosDB 可观测性最佳实践:Metrics

CnosDB

时序数据库 tsdb 开源社区 大数据 开源 CnosDB

如何做好IT项目管理

易成研发中心

#项目管理 IT项目管理

压缩位图——Roaring Bitmap

Java随想录

Java 数据结构 算法 map

大型复杂项目管理怎么结合传统与敏捷

易成研发中心

#项目管理

深入探索 CnosDB 可观测性最佳实践:开篇

CnosDB

时序数据库 tsdb 开源社区 大数据 开源 CnosDB

📢 CnosDB 新版本 2.4.2.1 发布:新增特性与优化一览 📢

CnosDB

时序数据库 tsdb 开源社区 大数据 开源 CnosDB

2024年受欢迎的9款文档版本控制工具推荐

易成研发中心

商业开源电商大模型- AI换装

摹图

Angular4现已发布_语言 & 开发_孙薇_InfoQ精选文章