BLOG
By the end of 2025, we received the latest Angular release—a true game changer: Angular 21. With each new version, Angular continues to push boundaries by improving performance, simplifying APIs, and embracing reactive programming patterns.
More recently, Angular 22 was released. While it doesn't introduce a large number of brand-new features, it focuses on maturing the framework by promoting many experimental and developer preview capabilities to production-ready status, making them stable and ready for everyday use. As well, there are some new features introduced in this release that are still in the experimental or developer preview stage and remain under active testing. With that in mind, let's dive into Angular 22 and explore all mentioned features.
Signal forms
Signal Forms provide a composable, reactive approach to form state using signals. If you tried them in v21, the concepts will feel familiar, but in v22 they're officially supported for production use.
With the Signal Forms approach, the form state is represented as a signal. This means updates are synchronous, type-safe, and work seamlessly with computed() and effect(), reducing the need for manual subscriptions and boilerplate code.


Angular Resource API (Signal-based async data)
The Resource API introduces a new way to handle asynchronous data in Angular using signals. It simplifies common patterns like fetching data from an API, handling loading states, and managing errors.
Instead of manually subscribing to observables and maintaining separate state variables, developers can now define a reactive resource that automatically updates when its dependencies change.

Key advantages of this new practice:
Angular ARIA – A Headless Accessibility Layer
Angular ARIA is a new library that provides a set of headless, accessibility-first directives designed to help developers build fully accessible components without manually implementing all ARIA roles, keyboard interactions, and focus management logic.
Instead of providing pre-styled UI components, Angular ARIA focuses purely on behavior and accessibility structure. This means developers are responsible for the HTML structure and styling, while the library ensures that components follow proper WAI-ARIA patterns and remain usable with assistive technologies.
New Service decorator
The new version introduces a new @Service decorator as a simplified alternative to @Injectable({ providedIn: 'root' }). When using @Service, the service is automatically registered as a singleton and provided at the root level of the application by default. This means it is shared across the entire app without the need to explicitly configure its provider scope. The goal of this decorator is to reduce boilerplate and provide a more straightforward way of defining simple, application-wide services in modern Angular applications.
The new defaults
OnPush change detection strategy
In Angular 22, the default change detection strategy has shifted to OnPush. This change aligns Angular more closely with its performance-first direction and the broader move toward zoneless change detection. Because of this change, explicitly setting ChangeDetectionStrategy.OnPush in new components is no longer required.
At the same time, the previous default strategy, ChangeDetectionStrategy.Default, has been renamed to ChangeDetectionStrategy.Eager. This renaming provides clearer intent, emphasizing that this strategy performs more frequent and immediate checks across the component tree.
Fetch backend by default (instead of XHR)
By default, Angular now uses the Fetch API for HTTP requests instead of the traditional XHR (XMLHttpRequest).
Strict template checking enabled by default
Angular templates are now checked more strictly at compile time. What this means - Angular will catch more errors in templates, such as:
Strict TypeScript enabled by default (TS 6.0)
With TypeScript 6.0, Angular now enables strict mode by default in new projects. What this includes:
Updates on Angular @switch
Angular 22 enhances the built-in @switch control flow by allowing multiple cases to share the same template block, reducing duplication and making templates easier to maintain.
In addition, Angular now provides better exhaustiveness checking. It can now be set @default never and the compiler will help detect when not all possible values have been handled in the @switch statement.

Inlining functions in Angular templates
Now there is a possibility that is supported for inline functions directly in templates, allowing developers to define simple callbacks without creating separate methods in the component class.

Improvements to host directives
Angular 22 also introduces several refinements to host directives, making their behavior more predictable and easier to work with:
Other Notable Updates in Angular 22
In addition to the major features, Angular 22 includes several smaller but valuable improvements:
Sneak Peek to upcoming: @boundary Error Handling in Templates (Developer Preview)
A new experimental feature, expected in developer preview around Q3 2026, introduces the @boundary template syntax — a new way to implement error boundaries directly in Angular templates.
The idea behind @boundary is to improve resilience in UI rendering. In complex applications, if a single component fails during a critical user flow, it can sometimes lead to broken views or even a blank screen due to change detection crashes.
@boundary addresses this by allowing developers to isolate parts of the template within a protected “error boundary” block. If an error occurs inside the boundary, it won’t cascade and break the rest of the page.