В Angular ленивая загрузка относится к технике загрузки модулей только тогда, когда они необходимы, а не к загрузке всех модулей при запуске приложения.
Это помогает
- Улучшить производительность приложения за счет снижения начальной загрузки
- Уменьшение объема памяти, необходимой для запуска приложения.
Ленивая загрузка достигается за счет использования свойства loadChildren
в декораторе @NgModule
. Когда маршрутизатор переходит к маршруту со свойством loadChildren
, Angular загружает указанный модуль по запросу, а не загружает его при запуске приложения.
Вот пример ленивой загрузки модуля в декораторе @NgModule
const routes: Routes = [ { path: 'dashboard', loadChildren: () => import('./dashboard/dashboard.module').then(m => m.DashboardModule) } ]; @NgModule({ imports: [RouterModule.forRoot(routes)], exports: [RouterModule] }) export class AppRoutingModule { }
В этом примере модуль dashboard
будет загружен только тогда, когда пользователь перейдет к маршруту /dashboard
. Это позволяет приложению запускаться быстрее и использовать меньше памяти, поскольку модуль dashboard
не загружается до тех пор, пока он не понадобится.
Стоит отметить, что отложенная загрузка вызовет задержку первого перехода к функции отложенной загрузки. Но это улучшит общую производительность приложения в долгосрочной перспективе.
Также стоит отметить, что вам необходимо настроить ленивую загрузку в вашем файле конфигурации webpack или angular-cli.
Продолжай учиться