Angular有三个主要版本.发布的第一个版本是Angular1,也称为AngularJS. Angular1之后是Angular2,与Angular1相比,它有很多变化.
Angular的结构基于组件/服务架构. AngularJS基于模型视图控制器. 2017年3月发布的 Angular 4 证明是一项重大突破,是Angular2之后Angular团队发布的最新版本.
Angular 4与Angular几乎相同2.它与Angular 2具有向后兼容性.在Angular 2中开发的项目在Angular 4中没有任何问题.
现在让我们看看Angular 4中的新功能和更改.
Angular团队在内部遇到了一些版本问题,因为他们不得不继续发生冲突并发布Angular的下一个版本 - Angular4.
现在让我们看看添加到Angular 4&minus的新功能;
Angular2仅支持 if 条件.但是,Angular 4也支持 if else 条件.让我们看一下使用ng-template的工作原理.
<span *ngIf="isavailable; else condition1">Condition is valid.</span> <ng-template #condition1>Condition is invalid</ng-template>
借助 as 关键字,您可以存储值如下所示 :
<div *ngFor="let i of months | slice:0:5 as total"> Months: {{i}} Total: {{total.length}} </div>
变量total使用 as 关键字存储切片的输出.
Angular 4中的动画作为单独的包提供,需要从@ angular/animations导入.在Angular2中,可以使用@ angular/core .它的向后兼容性仍然保持不变.
Angular 4 使用< ng-template> 作为标签而不是< template>; 后者用于Angular2. Angular 4将< template> 更改为< ng-template> 的原因是< template> 标记的名称冲突使用html < template> 标准标记.它将完全弃用.这是Angular 4中的主要变化之一.
Angular 4更新为最新版本的TypeScript,即2.2.这有助于提高速度并在项目中提供更好的类型检查.
Angular 4添加了一个新的管道标题案例,将每个单词的第一个字母更改为大写.
<div> <h2>{{ 'Angular 4 titlecase' | titlecase }}</h2> </div>
上面一行代码生成以下输出 - Angular 4 Titlecase .
简化了http get api的搜索参数.我们无需像在Angular2中那样调用 URLSearchParams .
与Angular2相比,Angular 4应用程序更小更快.它使用TypeScript 2.2版,这是最新版本,使最终编译的尺寸很小.