Member-only story
Angular 22.2: What’s new
Smarter forms, safer templates, and reactive routing.
🏗️ Framework
Templates & Compiler
a) Templates can access private component members — PR
Angular templates can now read and call TypeScript private members declared directly on their component.
import {
ChangeDetectionStrategy,
Component,
} from '@angular/core';
@Component({
selector: 'app-status',
template: `<p>{{ _status }}</p>`,
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class StatusComponent {
private readonly _status = 'Ready';
}Previously, the template type checker reported an error for _status. Angular 22.2 allows this direct access, which is helpful for members that exist only to support the component template.
This applies to TypeScript private members of the component itself. It does not make a nested object’s private properties accessible, and it does not apply to JavaScript #private fields.
b) Catch misspelled output bindings — PR
The new strictUnclaimedEventNames option catches camelCase output names that do not belong to the component and are not native DOM events:
<!-- Typo: itemSelecetd…









