Angular v22
今天,我们很高兴地宣布 Angular v22 的发布。我们对每次发布所做的工作感到自豪。我们的目标是保持高质量的功能和改进流,以使开发者的工作流程无论在何种情况下构建 Angular 应用程序都能够顺畅进行。Angular 是你可以在网络上构建下一代应用的坚实基础。这次发布包含稳定性、人体工程学等方面的更新。我们希望 Angular 成为一个发射平台,供你在构建下一个伟大的应用时使用。有很多优秀的功能值得讨论,所以让我们深入探讨。生产就绪是游戏的名字。在 Angular 团队中,我们非常高兴和自豪能够更新我们的 API,为 Angular 带来新的伟大功能。当我们推出新功能时,通常会将其作为实验性或开发者预览版本发布。这使得团队能够收集反馈并对新功能进行迭代。在此期间,功能会进行精炼,旨在向社区交付最佳可能的版本。这很好,但也意味着某些功能尽管开发者充满期待并准备立即使用,仍然未达生产就绪状态。在此次发布中,我们很高兴将三个重要的 Angular 功能提升到生产就绪、稳定状态:Signal Forms、Angular Aria 和异步反应式 API。Signal Forms:可组合、反应式并且准备就绪。我们设计 Signal Forms 作为新的、强大的表单 API。Signal Forms 结合了反应式表单的最佳部分、强类型表单的价值以及开发者喜欢的模板驱动表单和信号的反应性。我们将这一切结合在一起,创建了一个反应式、可组合和声明式的表单解决方案。当我们在 v21 中推出 Signal Forms 时,收到了来自 Google 内部和外部团队的强烈信号(双关意味)表明我们走在正确的轨道上。从那时起,我们更新了 Signal Forms:增加了一整套带有移步指南的文档,地址为 angular.dev。解决了社区提交的大量反馈和问题。支持 Angular Material 和 Angular Aria,为开发者提供更多集成表单的选项。以下是带有自定义验证和模板绑定的表单实现示例:/** * 使用 Signal Forms 入门 **/ import {signal} from "@angular/core" import {form} from "@angular/forms/signals" @Component({ selector: 'app-payment', imports: [FormField], templateURL: './app-payment.html', }) class Payment { readonly paymentModel = signal({ paymentType: '', amount: 0 }); readonly f = form(paymentModel, schema => { required(schema.paymentType, { message: '必填字段' }); }); } <!-- app-payment.html --> <form> <section> <label for="payment-type">付款方式:</label> <select id="payment-type" [formField]="f.paymentType"> <option value="">选择一种方式...</option> <option value="credit">信用卡</option> <option value="paypal">支付服务</option> </select> @if (f.paymentType().invalid() && f.paymentType().touched()) { <p class="error"> @for (error of f.paymentType().errors(); track error.kind) { <span>{{ error.message }}</span> } </p> } </section> <button type="submit" [disabled]="f().invalid()">提交付款</button> </form> Signal Forms 今天已准备好投入使用,前往 angular.dev 的更新指南开始。Angular Aria:可访问的原语,以便为所有用户构建应用。网络是为了每个人而设计的,无论某人决定以何种方式与其交互:键盘和鼠标、屏幕阅读器或其他方法。Angular 团队需要一种一致、可访问而又可定制的方式来构建组件,使他们能够为所有用户构建应用。Angular Aria 在我们在 Angular v21 中发布时,迈出了大胆的一步。我们希望开发者能够带来样式和业务逻辑,而 UI 指令和模式处理可访问性。考虑到这一点,Angular Aria 的一套可访问性模式在 Angular v22 中正式投入使用。现在,开发者可以自信地使用 Angular Aria 向用户发送组件。我们一直在为生产做好准备,以下是我们所做的一些更新:API 已稳定,许多社区问题已得到解决。Signal Forms 完全支持。测试工具可用。Angular Aria 的十二种 UI 模式涵盖常见的可访问性模式,现在可以在生产中使用。构建所有用户都能享受的应用。按回车键或点击以查看完整大小的图像。使用 Angular Aria 的示例树组件。异步反应性:新的前沿。在社区驱动的2024 NgPoland 会议上,Angular 团队成员 Pawel Kozlowski 分享了我们如何将信号的力量扩展到开发人员习惯的同步界限之外的愿景。接下来是团队对将成为 Angular 开发人员游戏规则改变者的事物的探索:异步信号。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡