1. Signal Forms (в экспериментальном режиме)
* Появился новый способ работы с формами через
@angular/forms/signals: формы теперь основаны на *Signals*. * Это упрощает управление состоянием (значения, валидность, “грязность” полей и т.п.) по сравнению с классическими
FormGroup / FormControl. * Есть пакет
compat, который помогает постепенно мигрировать существующие реактивные формы: @angular/forms/signals/compat. 2. Zoneless (без zone.js) по умолчанию
* Для новых приложений Angular 21 “zoneless” режим (без
zone.js) теперь используется по умолчанию. * Это позволяет убрать “заплатки” асинхронности, улучшает производительность, уменьшает размер бандла и делает стек-трейсы чище.
* Для приложений, которым всё ещё нужен
zone.js, можно явно вернуть его с помощью провайдера provideZoneChangeDetection(). 3. AI-инструменты: MCP-сервер Angular
* В CLI Angular появилось встроенное “серверное” API — MCP (Model Context Protocol). Это позволяет ИИ-ассистентам (LLM) взаимодействовать с вашим проектом: получать структуру, документацию, примеры.
* Инструменты MCP позволяют:
list_projects, get_best_practices, search_documentation, find_examples, а также миграции (modernize, onpush_zoneless_migration) и учебный режим (ai_tutor). * Это шаг к более тесной интеграции Angular-проектов с ИИ и автоматизации задач (генерация кода, рекомендации и т.п.).
4. Angular ARIA (preview)
* Добавлен новый пакет
@angular/aria (доступен в режиме Developer Preview). * Это “headless” библиотека компонентов с акцентом на доступность (accessibility): компоненты без стилей (можно стилизовать как хочется), поддерживают шаблоны ARIA.
* Поддерживаются такие паттерны: Accordion, Combobox, Grid, Listbox, Menu, Tabs, Toolbar, Tree.
5. Vitest — тестовый раннер по умолчанию
* Angular CLI теперь использует Vitest как основной тестовый фреймворк.
* Поддержка Karma/Jasmine устаревает — ожидается их удаление в следующих версиях (начиная с v22).
6. Упрощённый HttpClient
*
HttpClient теперь предоставляется в root-инжекторе по умолчанию — больше не нужно вручную вызывать provideHttpClient() при базовой настройке. * Добавлены новые опции:
responseType (в стиле Fetch API) и referrerPolicy для HTTP-запросов. 7. Улучшения шаблонов и компилятора
* В шаблонах теперь поддерживаются регулярные выражения: можно писать выражения вроде
{{ /\d+/.test(someValue) }} прямо в шаблоне. * У
@defer директивы теперь есть опция конфигурировать IntersectionObserver, например rootMargin, trigger и т.п. *
SimpleChanges (в ngOnChanges) сделан generic — теперь можно указывать тип компонента, чтобы получить сильную типизацию. 8. Контейнеры стилей (encapsulation)
* Появилась экспериментальная стратегия
ExperimentalIsolatedShadowDom, которая использует Shadow DOM, но “изолирует” стили компонента (чтобы они не проникали наружу и внешние стили не влияли). 9. Оптимизация сборки и инструментов разработки
* Улучшены tree-shaking и удаление неиспользуемого кода → уменьшение размера бандлов.
* Улучшения в dev-сервере: более быстрый HMR (горячая перезагрузка), лучшее кеширование и меньшее потребление памяти.
* CLI получает более удобные схемы миграции и улучшенную эргономику для совместимости с новыми паттернами (signal, zoneless и пр.).
## Влияние