Web前端框架Angular4.0.0 正式版发布
发布时间 - 2026-01-11 00:23:57 点击率:次前言

angular4.0.0正式版现在可以使用了。这是自我们宣布angular改版后,首次发布的专业版本。它向下兼容,支持所有使用了angular2.x.x版本的应用程序。
我们很高兴和大家分享这个版本,它包括最近的3个月中我们做的功能上的主要改进。我们努力让开发者们能够很容易的接受angular4.0.0。
新版本的特性
•更轻量化、更快
在这个新版本上,我们履行了我们的承诺,我们做到了让Angular的程序变的更轻量化,更快。但是我们还没有完全的优化完,在接下来的日子中,你会看到我们将着重于这方面的改进。
•视图引擎
我们在后台改变了生成的AOT代码样式。这个变化将减少大多数情况下生成的60%的组件代码。它可以使你自己的模板更个性化,复用率更高。
在我们新版本还没发布的时候,我们听到很多开发者认为如果他们将angular更新到4.0.0,angular4.0.0将会使他们的生产束将降低。为了更好的了解我们对视图引擎做的改进,欢迎阅读我们的开发文档。
•动画包
我们在@angular/core中新增了很多我们自己的动画效果包。这就意味着,你用或不用,动画包就在那里,不离不弃。
这个变化同样会让你更容易的找到文档,更好的实现自动完成。你也可以从@angular/platform-browser/animations中导入浏览器动画模型,以此来为你的主要模块实现你需要的动画效果。
新功能
•*ngIf和*ngFor的改进
我们的模块绑定语法现在支持一些有用的改进。你现在可以使用if/else这类风格的语法,并且局部变量支持类似下面的使用。
<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的所改即所见特性。这是angular团队通过的第一个来自于使用者,社区推动发展的一个项目。这个版本包括过去几个月内我们开发团队及社区开发者的,共同努力的结果。Angular的平台服务器部分包含了Universal的专业代码。
如果想了解更多的Augular的Universal,请查阅Angular/平台服务器中的一个新方法,renderModuleFactory,或者查看Rob Wormald的演示库。更多的文档和代码即将发布。
•TypeScript 2.1和2.2的兼容性
我们让Angular支持了最近的几个TypeScript的版本。这将会提升ngc的速度,此外,你的程序还将得到更好的类型检查。
•模块的源映射
当你的模块中的某个因素会造成错误时,我们会生成一个源映射,给出模块中产生错误的上下文位置。
包的变化
•Flat ES Modules (Flat ESM / FESM)
我们现在扁平化我们组件的版本(我们在EcmaScript模块通过格式化代码来控制版本,具体参见我们的示例文件)。这种行为将会帮助 你进行tree-shaking,帮助减少你的生产术的大小,加快编译,翻译,以及在某些情况下浏览器的加载。
•Experimental ES2015 Builds
我们现在也选择使用ES2015将我们的包扁平化,格式化。这种选择是带有实验性质和冒险进入的。开发商已经通报了,把这些包汇总将会增加7%的大小。尝试一下这些新的包,配置编译环境来解决包中的‘ec2015'属性。json超出了这些模块的属性。
•Experimental Closure Compatibility
现在我们所有的代码都有闭包注释,使其尽可能的利用先进的闭包优化,从而导致减小的束大小和更好的tree shaking代码优化。
更新4.0.0
更新到4.0.0是和你更新Angular支持包到最新版本一样简单,如果你想要动画的新特性,请检查两次。这将试用与大多数情况。
•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
•window下更新:
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服务或者ng命令,一切就都就绪了。
如果你依赖动画,可以在你的root NgModule下从@angular/platform-browser/animations模块中导入新的BrowserAnimationsModule类。
如果不需要动画,除了动画存在小问题,你的代码可以直接编译和运行。从Angular/core下引入包是过时的一种做法,正常的做法应该是从@angular/animations导入新的包,导入{ trigger, state, style, transition, animate }等。
如果你想看到更多改变你的应用程序需要的信息,你可以参考我们正在做的交互式更新指南。
已知问题
angular4的其中一个目标是使angular兼容TypeScript的strictNullChecks设置,使其支持一个更严格的子集类型的授权。我们发现在发布候选版时,我们需要做各种工作,来保证angular4在各种使用情况下都可以正常运行,所以为了防止应用程序中途停止运行,我们故意设置4.0版本不支持strictNullChecks。我们会很快解决这个问题的,预计在4.1版本,我们将支持strictNullChecks。(问题编号:15432)。
下一步呢?
和我们发布2.x版本的时间表一样,我们正在制定未来6个月的版本发布的工作计划。你很快就能看到4.0.0的补丁,并且我们已经在开发4.1版本了。我们将继续努力让Angular变的更小和更快,我们还会开发新的功能,比如说@angular/http,@angular/service-worker, and @angular/language-service的正式版本。
你也应该持续关注、更新我们的文档,一旦CLI稳定发布,我们将提供相应的架包作者的指导。
来源于angular4.0.0发布时的公告,译者:niithub
原文发布时间:Thursday, March 23, 2017
翻译时间:2017年3月24日
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
# angular4.0发布
# angular
# 4.0.0
# angular4
# 正式版
# Angular4 中常用的指令入门总结
# 浅谈angular4生命周期钩子
# Angular4学习笔记之准备和环境搭建项目
# Angular4 中内置指令的基本用法
# 详解Angular4 路由设置相关
# 深入理解Angular4中的依赖注入
# angular4中关于表单的校验示例
# Angular4开发解决跨域问题详解
# Angular4学习笔记之实现绑定和分包
# 浅谈angular4 ng-content 中隐藏的内容
# Angular4的输入属性与输出属性实例详解
# 这是
# 自己的
# 更快
# 几个
# 新版本
# 文档
# 将会
# 应用程序
# 情况下
# 使其
# 我们现在
# 使用了
# 这将
# 新到
# 发布时间
# 扁平化
# 他们的
# 如果你
# 都有
# 还没有
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在自有机房高效搭建专业网站?
Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理
Java解压缩zip - 解压缩多个文件或文件夹实例
Laravel storage目录权限问题_Laravel文件写入权限设置
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
晋江文学城电脑版官网 晋江文学城网页版直接进入
如何实现javascript表单验证_正则表达式有哪些实用技巧
nodejs redis 发布订阅机制封装实现方法及实例代码
Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践
在线教育网站制作平台,山西立德教育官网?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
js实现获取鼠标当前的位置
Claude怎样写结构化提示词_Claude结构化提示词写法【教程】
装修招标网站设计制作流程,装修招标流程?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
实例解析Array和String方法
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
深圳网站制作培训,深圳哪些招聘网站比较好?
米侠浏览器网页背景异常怎么办 米侠显示修复
微信公众帐号开发教程之图文消息全攻略
简单实现Android文件上传
如何登录建站主机?访问步骤全解析
Android 常见的图片加载框架详细介绍
如何在橙子建站上传落地页?操作指南详解
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
linux写shell需要注意的问题(必看)
如何在IIS7中新建站点?详细步骤解析
Laravel如何处理CORS跨域请求?(配置示例)
如何用腾讯建站主机快速创建免费网站?
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
Laravel观察者模式如何使用_Laravel Model Observer配置
如何在阿里云完成域名注册与建站?
独立制作一个网站多少钱,建立网站需要花多少钱?
Laravel如何集成Inertia.js与Vue/React?(安装配置)
活动邀请函制作网站有哪些,活动邀请函文案?
Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】
Bootstrap整体框架之JavaScript插件架构
JS实现鼠标移上去显示图片或微信二维码
如何在企业微信快速生成手机电脑官网?
佛山企业网站制作公司有哪些,沟通100网上服务官网?

