Angular 14 正式 GA
Angular 14 已正式 GA。值得关注的新特性包括:
- 引入更加严格的类型化表单
- Angular CLI 支持自动补全
- 独立组件发布开发者预览版
- 简化 page title 可访问性
- Angular DevTools 支持离线使用,以及在 Firefox 中使用
- 引入实验性的 ESM 应用构建系统
- ……
独立组件
Angular 独立组件旨在通过减少对 NgModules 的需求来简化 Angular 应用程序的创作。在 v14 中,独立组件处于开发者预览版阶段。它们已准备好在应用程序中用于探索和开发,但目前不是稳定的 API,并且可能会在典型的向后兼容性模型之外发生变化。
import { Component } from '@angular/core'; import { CommonModule } from '@angular/common'; // includes NgIf and TitleCasePipe import { bootstrapApplication } from '@angular/platform-browser'; import { MatCardModule } from '@angular/material/card'; import { ImageComponent } from './app/image.component'; import { HighlightDirective } from './app/highlight.directive'; @Component({ selector: 'app-root', standalone: true, imports: [ ImageComponent, HighlightDirective, // import standalone Components, Directives and Pipes CommonModule, MatCardModule // and NgModules ], template: ` <mat-card *ngIf="url"> <app-image-component [url]="url"></app-image-component> <h2 app-highlight>{{name | titlecase}}</h2> </mat-card> ` }) export class ExampleStandaloneComponent { name = "emma"; url = "www.emma.org/image"; } // Bootstrap a new Angular application using our `ExampleStandaloneComponent` as a root component. bootstrapApplication(ExampleStandaloneComponent);
点此查看此特性的设计思路:https://github.com/angular/angular/discussions
更严格的类型化表单
Angular 14 为 Angular Reactive Forms 包实现了更严格的类型。
类型化表单确保表单控件、组和数组中的值在整个 API 中都是类型安全的——以实现更安全的表单,尤其是对于深度嵌套的复杂案例。
const cat = new FormGroup({ name: new FormGroup({ first: new FormControl('Barb'), last: new FormControl('Smith'), }), lives: new FormControl(9), }); // Type-checking for forms values! // TS Error: Property 'substring' does not exist on type 'number'. let remainingLives = cat.value.lives.substring(1); // Optional and required controls are enforced! // TS Error: No overload matches this call. cat.removeControl('lives'); // FormGroups are aware of their child controls. // name.middle is never on cat let catMiddleName = cat.get('name.middle');
Angular CLI 支持自动补全
Angular v14 的新ng completion
功能引入了实时预输入的自动补全功能。为确保所有 Angular 开发者都知道这项特性,CLI 将提示开发者在 v14 中的第一个命令执行期间选择加入自动完成功能。开发者也可以手动运行ng completion
,CLI 会自动进行设置。
Angular DevTools 支持离线使用
Angular DevTools 调试扩展现已支持离线使用。对于 Firefox 用户,可在 Mozilla 附加组件中找到该扩展。
实验性 ESM 应用程序构建
最后,Angular v14 引入了一个实验性的基于 esbuild 的构建系统ng build
,用于编译纯 ESM 输出。如需在应用程序中尝试此操作,请更新浏览器构建器angular.json
:
"builder": "@angular-devkit/build-angular:browser" "builder": "@angular-devkit/build-angular:browser-esbuild"

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Docker Desktop 4.9.0 发布
Docker Desktop 4.9.0 正式发布,更新内容如下: 新内容 在主页上增加了以下内容的指南:Elasticsearch、MariaDB、Memcached、MySQL、RabbitMQ 和 Ubuntu 在 Docker Dashboard 上添加了一个页脚,包含了关于 Docker 桌面更新状态和 Docker 引擎统计的常规信息。 重新设计了容器表,增加了: 一个将容器 ID 复制到剪贴板的按钮 每个容器的暂停按钮 容器表的列的大小调整 容器表的排序和大小调整的持久性 容器表的批量删除 升级 Compose v2.6.0 Docker Engine v20.10.16 containerd v1.6.4 runc v1.1.1 Go 1.18.2 适用于所有平台 修正了一个问题,如果你在 Docker Desktop 暂停时退出应用,会导致 Docker Desktop 挂起。 修正了 Kubernetes 集群在 PKI 过期后不能正确重置的问题。 修正了一个问题,即 Extensions Marketplace 没有使用定义的 http 代理。 改进了 Docke...
- 下一篇
毕昇 JDK 登陆 Eclipse Adoptium 开源 JDK 发行版市场
毕昇 JDK 是华为开源的企业级 JDK 发行版,于 2022 年 05 月 26 日成功登陆了 Eclipse Adoptium 开源 JDK 发行版市场。 近日,Eclipse 基金会与其 Adoptium 工作组合作,宣布推出了Adoptium Marketplace,旨在让用户有机会通过 Eclipse 基金会管理的集中式网站获得 Java SE TCK 认证和 AQAvit 质量测试的二进制文件,包括 Eclipse Temurin。 此举可 “为数以百万计的开发者、研究人员和其他组织提供了一种简单的方法,以确保高性能、企业级、跨平台、经过 AQAvit 验证和 TCK 认证的二进制文件在整个 Java 生态系统中普遍使用。” Adoptium 工作组是由阿里云、Azul、华为、IBM、iJUG、Karakun AG、Microsoft、New Relic、Red Hat 等众多 Java 开发者和厂商共同发起的,旨在为 Java 生态系统提供了完全兼容,基于 OpenJDK 源代码的 Java 运行时的高质量发行版。 任何从 Adoptium Marketplace 选择 ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装