写点什么

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:005767

评论

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

Ronin Network 宣布与链上数据解决方案 Footprint Analytics 合作

Footprint Analytics

区块链 以太坊 加密货币

Excel数据转换为一对多的工具类

alexgaoyh

Java Excel 一对多解析 exsyexcel 数据解析

OpenSPG 新版发布:新增大模型知识抽取,3 步快速搭建专属知识图谱

可信AI进展

知识图谱 大模型 LLM

大白话70个你必须知道的AI重要概念(三)

FN0

人工智能 AI AIGC

2024杭州国际智慧城市,人工智能,安防展览会(杭州智博会)

AIOTE智博会

智博会 物联网展 人工智能展 智慧城市展 杭州智博会

实现高效人力资源管理的完美搭档,聚道云与薪人薪事合作,助力企业数字化转型

聚道云软件连接器

案例分享

如何利用docker部署springboot 项目

想要飞的猪

全方位提升用户数字化体验的解决方案

观测云

用户体验

创新逛展体验!实时云渲染助力2023天河区首届房博会元宇宙

3DCAT实时渲染

元宇宙解决方案 元宇宙线上展厅

赋能虚拟教学革命,实时云渲染助力复旦大学打造元宇宙教学

3DCAT实时渲染

元宇宙 元宇宙解决方案 元宇宙教学

Zynq7020 使用 Video Processing Subsystem 实现图像缩放

芯动大师

软件测试/测试开发/测试管理 | Page Object模式:为什么它是Web自动化测试的必备工具

测吧(北京)科技有限公司

测试

腾讯云ES AI增强搜索:十分钟快速入门自然语言处理(NLP)与向量检索

腾讯云大数据

ES

聚合收益协议 InsFi :打开铭文赛道全新叙事的旋转门

股市老人

官宣!OpenTiny 前端 Web 应用开发挑战赛开赛啦~30万奖金等你拿!

OpenTiny社区

开源 前端 低代码 组件库

程序员一定要知道的前端常用设计模式

不在线第一只蜗牛

前端 前端开发

第七在线荣获百灵奖 Buylink Awards 2023零售圈年度卓越服务商品牌

第七在线

2023 IoTDB Summit:天谋科技高级开发工程师谭新宇《优其效:如何用 IoTDB 监控工具进行深度系统调优》

Apache IoTDB

自动化测试用例规范

无涯

自动化测试 测试开发 pytest Python自动化测试

稳定性建设实践分享

木小风

稳定性

除了OneNote,还有什么值得推荐的手写笔记软件?

彭宏豪95

效率工具 在线白板 办公软件 笔记软件 boardmix

国内再下两城!Zilliz Cloud 全球可用服务区增至 11 个

Zilliz

Zilliz AIGC zillizcloud 云原生向量数据库

Picturesocial | 开发实践:如何在15分钟内将应用容器化

亚马逊云科技 (Amazon Web Services)

Docker ubuntu 容器 API

软件测试/测试开发/全日制|Page Object模式:为什么它是Web自动化测试的必备工具

霍格沃兹测试开发学社

在 zsh 中找不到刚刚安装的 MySQL 怎么破?

escray

MySQL

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