Angular 2 вложенные компоненты и роуты?

Доброго времени суток, мой дорогой друг.
У меня следующая проблема: допустим есть следующая структура приложения:
- AppComponent
-- TeamComponent
---  TeamMemberComponent
---- TeamMemberDetailsComponent.

В приложении есть маршруты:
/
/team/:teamId
/team/:teamId/member/:memberId
/team/:teamId/member/:memberId/details

При запросе каждого маршрута выполняется запрос к api. Проблема состоит в том, что если пользователь перейдет в браузере по последнему маршруту, может возникнуть ошибка из-за того, что родительский компонент еще не прогрузился. Хотелось бы узнать как правильно решить эту проблему. Одно из решений, которое нашел я, состоит в том, что для каждого роута мне нужно создать сервис-resolver, и прописать в маршрутах что-то вроде этого
{
        path: 'team/:teamId',
        component: TeamComponent,
        resolve: {
            members: MembersResolverService
        },
        children: [
            ...
        ]
    }
  • Вопрос задан
  • 921 просмотр
Пригласить эксперта
Ответы на вопрос 1
mnagaev
@mnagaev
FullStack Web Developer
если дочерний компонент требует данные из родительского, то наверное надо сделать прелоадер или повесить *ngIf на дочерний компонент пока данные в родительском не загрузятся и не отобразятся.

Или избавится от такой вложенности компонентов
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы