Справочная информация:
Я занимаюсь разработкой приложения, которое будет использовать механизм отложенной загрузки angular (я использую 7.2.0).У меня есть несколько feature-routing.module.ts
, которые обрабатывают маршрутизацию упомянутых лениво загруженных модулей.
На стороне AppModule
я хотел бы использовать описанный шаблон здесь ;то есть импортировать части массива маршрутов (путь js) из другого файла, который экспортирует (js) фрагмент конфигурации (вместо того, чтобы создавать много модулей маршрутизации, которые не нужны - никаких специальных провайдеров или сервисов на подстроки -).
Вопрос: Что произойдет с точки зрения комплектации, если я поместу часть конфигурации маршрута приложения, касающуюся функции, в тот же файл, что и модуль маршрутизации лениво загруженного модуля?
file экспортирует модуль маршрутизации, используемый только ленивым функциональным модулем, а также экспортирует некоторое const, которое используется только модулем app-routing.Итак, будет ли весь файл (следовательно, включая ОБА и модуль маршрутизации функций и другие объекты) ДВАЖДЫ: один раз в модуль приложения и один раз в функцию?Или ng build
будет настолько умным, чтобы связывать только ОДИН РАЗ с модулем приложения и только ОДИН РАЗ модуль маршрутизации функций с модулем функций?
Мне кажется, это хорошая идея, потому что все проблемы маршрутизации конкретной функции будут в одном файле, и любые соответствующие модули будут использовать его оттуда.Я отчаянно пытаюсь минимизировать количество файлов, потому что оно выходит из-под контроля.
Например, user-routing.module.ts:
// This one is meant for the AppRoutingModule, and should only be bundled with that.
export const user_routes: Routes = [
{
path: 'users',
loadChildren: './users/users.module#UsersModule'
}
// ...
];
// The rest should only be bundled with the UsersModule and NOT with the app module
const routes: Routes = [
// ...
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class UsersRoutingModule { }