在过去的一年里,我们删除了 Angular 的旧版编译器和渲染管道,这使得在过去几个月内实现了一系列开发人员体验的改进。Angular v15 是这方面的巅峰之作,它进行了数十项改进,带来了更好的开发人员体验和性能。
在过去的一年里,我们删除了 Angular 的旧版编译器和渲染管道,这使得在过去几个月内实现了一系列开发人员体验的改进。Angular v15 是这方面的巅峰之作,它进行了数十项改进,带来了更好的开发人员体验和性能。
六个月前,我们通过将 standalone API 从开发者预览版中升级到稳定版,在 Angular 的简单性和开发者体验方面达到了一个重要的里程碑。今天,我们很高兴与大家分享,我们将继续保持 Angular 的势头,推出自 Angular 首次推出以来最大规模的版本, 在反应性、服务器端渲染和工具方面取得了巨大飞跃。所有这些都伴随着针对功能请求的数十项用户体验改进,GitHub 上总共有超过 2500 个点赞!
这篇文章包含大量内容,涵盖了我们在过去六个月中所做的大部分改进。
上个月是 Angular 红盾诞生 13 周年。AngularJS 是新一波 JavaScript 框架的起点,旨在支持对丰富 Web 体验日益增长的需求。今天,我们凭借新的外观和一系列前瞻性功能,通过版本 17 带领大家走向未来,为性能和开发人员体验设定了新标准。
Node Version Manager (NVM) 是一种广泛使用的工具,允许开发人员在单台计算机上管理 Node.js 的多个版本。它的重要性怎么强调都不为过,因为 Nodejs 应用程序有时可能是依赖特定版本运行,然而不同的项目可能需要不同的 Nodejs 版本。NVM 提供的灵活性确保了不同项目同时运行在同一台机的开发过程的顺利进行,允许开发人员在 Node 版本之间无缝切换。在 macOS 上,有多种安装 NVM 的方法,但最流行、最有效的方法之一是使用 Homebrew,这是 macOS 著名的包管理器。
本指南将引导您完成使用 yum 在 centOS 7.9 上安装 NVM 的详细步骤,让您轻松设置灵活的 Node.js 开发环境。
我们在组件中初始化MatPaginator,如
@ViewChild(MatPaginator) paginator: MatPaginator;
并将其分配给在我们的组件中定义的MatTable DataSource
matTableDataSource.paginator=this.ginator;
当使用带有*ngIf组合的async管道异步初始化数据源时,这在用例中不起作用。
在TypeScript和Angular中使用Getter和Setter
getter 和 setter 是一种众所周知的模式,在不同的语言中使用。在本文中,我想通过 TypeScript 中的示例帮助您理解 getter 和 setter。看看它如何在 Angular 应用程序中发挥作用。
Material You 如何支持美观、高效的平板电脑和可折叠体验?
近年来,我们看到了更大屏幕的增长趋势。这在一定程度上是由于平板电脑、大型智能手机和台式机的日益普及。
在今年的 Google I/O 大会上,Material Design正在深入研究针对设计师和开发人员的大屏幕设计的最新指南。请关注我们的演讲并继续阅读,了解 Material如何帮助您应对针对多种设备进行设计的挑战和机遇,以满足应用程序用户不断增长的需求。
Material foundations是任何优秀用户界面的基础,从无障碍标准到布局和交互的基本模式。
Material Design 是由 Google 设计师和开发人员构建和支持的设计系统。Material.io包含针对 Android、Flutter 和 Web 的深入 UX 指南和 UI 组件实现。
Material于2014年推出,多年来不断发展。
材料设计1(M1):第一代Material Design于2014年推出,存档并可访问:https://Material.io/archive/guidelines。
材料设计2(M2):2018年推出的第二代材料设计引入了Material主题和Material组件。
Material Design 3(M3):2021年推出的第三代Material包括Material You功能,支持个性化、自适应和富有表现力的体验 - 从动态颜色和增强的无障碍功能,到大屏幕布局和设计Tokens的基础。
Material You:新的Material视觉风格和一系列功能,满足个人用户的个人和表达需求,是Material Design 3的一部分
最新版本 Material 3 支持个性化、响应式和富有表现力的体验 - 从动态颜色和增强的可访问性,到大屏幕布局和Design tokens的基础。
Sentry 是一个免费和开源的错误跟踪平台,可以实时监控和修复崩溃。它使软件开发人员能够看到重要的东西,更快地解决问题,并不断了解他们的应用程序。这个平台提供了对生产部署的实时洞察力,并提供了重现和修复崩溃的信息。Sentry 支持所有主要的语言和框架,并与你喜欢的应用程序和服务集成。
strapi 是目前我最喜欢的 CMS 系统之一, 因为它可以嵌入到各种前端框架, 并于各种前端技术浑然天成, 这是我喜欢它的原因. 这里大胆预测一些, 它大概会成为下一代 CMS 系统的引领者. 虽然它还很年轻, 但是已经出现王者气象.
正如很多年轻技术一样, 它还有很多不够完善的地方, 今天就它对于 self-hosted 部署方式的不足之处, 我们另辟蹊径介绍一种我正在实践的自动部署方式. 那就是使用 rpm 包进行部署.
在本文中我们将深入探讨一些您可能已经见过的 Angular 模式和方法。我将讨论 Angular 管理依赖项辑器配置信息中经常会使用到的 forRoot 和 forChild 方法。
Angular 14 引入了独立组件——该组件不属于任何 ngModule 的一部分,可以与其他独立或基于模块的组件一起使用。
从 Angular 14 开始,您可以创建整个应用程序,而无需制作任何自定义 Angular 模块,这可以通过使用独立组件来实现,这些组件提供了创建 Angular 应用程序的简化方法。
Promise 和回调函数是在 JavaScript 中编写异步代码的构建块。
在 Angular 应用程序中,我们可以使用 Rx.js 来利用 Observables、Subject、BehaviorSubject 等的强大功能,以优雅的方式编写异步代码。
随着最新版本的 ECMA Script 草案,JavaScript 开始支持“异步等待”功能。
Async Pipe可以对 Angular 应用程序的更改检测策略产生巨大影响。如果到目前为止您还感到困惑,请详解读完全文。我们一起来了解一下吧!
在 Angular 中,Async Pipe本质上是执行以下三个任务的管道:
此外,作为最佳实践,建议尝试使用 onPush 更改检测策略上的组件和异步管道来订阅可观察对象。
如果您是Angular的初学者,也许上面对异步管道的解释让人不知所措。因此,在本文中,我们将尝试使用代码示例逐步理解异步管道。只需创建一个新的Angular 项目并继续操作即可;在文章的最后,您应该对异步管道有一些深刻的了解。