Проверяет понимание механизма lazy loading в standalone-компонентах Angular и необходимости его настройки.
Lazy loading — это техника отложенной загрузки модулей или компонентов, которая позволяет сократить время начальной загрузки приложения. Вместо того чтобы включать весь код в один большой бандл, приложение разбивается на части, которые загружаются только тогда, когда они действительно нужны пользователю. Это особенно важно для крупных приложений, где неиспользуемый код может значительно замедлить старт.
В Angular, начиная с версии 14, появились standalone-компоненты, которые не требуют объявления в NgModule. Для реализации lazy loading с ними используется функция loadComponent в конфигурации маршрута. Это явная настройка, а не поведение по умолчанию. Если просто указать компонент в свойстве component, он будет загружен сразу вместе с основным бандлом.
// app.routes.ts
import { Routes } from '@angular/router';
export const routes: Routes = [
{
path: 'dashboard',
loadComponent: () => import('./dashboard/dashboard.component').then(m => m.DashboardComponent)
}
];В этом примере компонент DashboardComponent будет загружен только при переходе на маршрут /dashboard. Это достигается благодаря динамическому импорту, который возвращает Promise, разрешающийся в сам компонент.
Lazy loading стоит применять для редко используемых разделов приложения, таких как административные панели, страницы настроек или большие формы. Это помогает уменьшить начальный размер загрузки и улучшить показатели производительности, особенно на медленных соединениях.
Итог: Lazy loading для standalone-компонентов в Angular требует явной настройки через loadComponent. Используйте его для оптимизации загрузки крупных приложений, разделяя код на логические части, которые подгружаются по мере необходимости.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию