Angular 团队正在预览包括 Signals API 和新的 Output API 在内的主要新特性,同时谷歌(Google)透露计划将这个流行的前端 TypeScript 框架与 Wiz 合并,Wiz 是一种用于许多第一方项目的内部框架。
在上周于盐湖城(Salt Lake City)举行的 NG Conf 2024 上,产品和开发人员关系负责人 Minko Gechev 以及工程技术负责人 Jeremy Elbourn 登台介绍了 Angular Signals 的工作是如何吸引 Wiz 内部团队注意的,以至于 Signals 原语现已在 YouTube 移动端的生产环境使用。
“这个项目为我们团队之间的持续合作建立了一种模式。展望未来,Angular 和 Wiz 将更加紧密地合作。”Gechev 在主题演讲中说道。
尽管 Gechev 没有宣布完整的合并计划,但他在黑客新闻的讨论中补充道:“合并是最终目标!两个团队已经在共享设计和实现上紧密合作了。”
当被问及这是否意味着目前闭源的 Wiz 将变成开源的时,Gechev 证实到:“是的,通过 Angular。”
Gechev 和 Elbourn 在主题演讲中表示,Wiz“与谷歌内部技术栈紧密结合”,这意味着它不太适合一般用途。可能的结果不是 Angular 将成为一个新的合并框架,而是 Wiz 团队将提供更多的投入以及更多的内部采用。
不管有没有 Wiz, Angular 都在改变。Signals 在2023年4月的一个RFC中首次被提及,它被描述为 Angular 的一个重要的新管道,旨在取代“zone.js 的开销、陷阱和怪圈”,成为“框架的响应式基础”。
文档中将 Angular 信号描述为“一个值的包装器,当这个值发生变化时,可以通知对其感兴趣的消费者”。信号可以包含任何值,从简单的原语到复杂的数据结构。”
在 2024 年 NG Conf 上展示的新的 Anglar API
但这仅仅是起点。新的基于信号的 API 包括信号查询,可以从子元素中查找并读取值;信号输入,允许从父组件绑定值;以及模型输入,允许与可写信号进行双向绑定。这些都在上个月发布的 17.3 版本的开发者预览版中。
另一个新的预览 API,output,允许组件向父组件发送值。尽管不是基于信号的,但新的输出 API 与它所取代的 API 不同,因为它不是基于装饰器的,这使得它“在概念上是一致的”。
Angular 很受欢迎,尽管在 React 和基于 React 的框架面前相形见绌。谷歌的这些活动和投资能否让其重回采用增长的正轨?可能会,但仍有一些不利因素。一种可能是团队承诺保持向后的兼容性,这意味着有多种方法可以做同样的事情,这进一步意味了会出现臃肿和复杂性,因为开发人员会试图找出哪种方法是最好的。
开发人员重视稳定性和改进。“Angular 一直是企业的首选框架,因为它具有稳定、迭代、预测良好的未来版本和长期支持。如果谷歌现在想要分割 Angular,只是因为他们想拥有另一个 React 克隆,以吸引那些很酷的孩子……那么这将是一次可怕的经历。”一位网友在 GitHub 的评论中说道。
Angular 之前也曾遭受过碎片化的困扰,在 2016 年发布的版本中,使用 TypeScript 重写了原始框架,导致旧版本被重命名为 AngularJS。
相反的观点是,信号和其他进步确实提高了性能和开发人员的体验,而不仅仅是弥补了学习新编码方式的需要。“多年来,我一直致力于大型的 Angular 项目,我真的很享受这种开发体验。尤其是现在有了新的模板语法、信号和其他最近的变化。”另一位开发人员说道。
原文链接:
评论