Угловая маршрутизация 4 в лениво загруженном функциональном модуле - PullRequest
0 голосов
/ 06 декабря 2018

Я использую Angular 4.1.3.Наше приложение началось с малого, но выросло настолько, что потребовало использования функциональных модулей.Итак, я начал разбивать его на модули.У меня есть следующие настройки:

- app.module - app-routing.module --- feature-a.module

feature-a.module загружается в app-routing.module как: ... { path: 'a', loadChildren: '/app/components/a/feature-a.module#FeatureAModule' }, ...

В FeatureAModule у меня естьМаршрутизация настроена для обработки страниц в обычном режиме, но поскольку эти страницы теперь являются частью функционального модуля, они должны быть загружены как:

localhost:4200/a/page1 localhost:4200/a/page2

Проблема заключается в том, что изначально всемаршрутизация была установлена ​​на верхнем уровне, поэтому все мои внутренние ссылки маршрутизации указывают на:

localhost:4200/page1 localhost:4200/page2

, который попадает на маршрутизацию верхнего уровня, которая перенаправляет их на перенаправление «**» в приложении-navigation.module.

Я могу просмотреть компоненты, включенные в FeatureAModule, и вручную изменить ссылки, чтобы включить префикс «/», и это работает, но мне было интересно, есть ли лучший способ обеспечитьчто все маршруты, определенные в функциональном модуле, остаются там.

Спасибо.

1 Ответ

0 голосов
/ 12 декабря 2018

Я не уверен, что это лучший способ справиться с этим, но в итоге я добавил это в app-routing.module.ts:

{ path: 'page1', redirectTo: '/a/page1' },
{ path: 'page2', redirectTo: '/a/page2' },

Таким образом, когда основной маршрутизатор увидел URL страницы1 или страницы2, он перенаправился на / a / page1 (2).Это работает, но, как я уже говорил, это не так, если это лучший способ справиться с этим.

...