Угловая маршрутизация для модулей на основе сервисной реакции - PullRequest
0 голосов
/ 29 ноября 2018

У меня возникают проблемы при работе с маршрутизацией для Angular 5. Мое требование: как только страница загрузится, Student user будет перенаправлен на Students page, а Teacher user должен быть перенаправлен на Teacher page.

Для этого мне нужно сделать сервисный вызов, как только страница загрузится, и затем решить, к какому модулю направить.Кто-нибудь может подсказать мне, как добиться этого сценария?Любые ссылки / ссылки будут полезны.

Ответы [ 2 ]

0 голосов
/ 29 ноября 2018

Вы можете использовать canActivate для навигации по URL в зависимости от условий.

path: 'admin',
component: AdminComponent,
canActivate: [RoleGuard],
data: {role: 'Admin'}
0 голосов
/ 29 ноября 2018

В главном компоненте вы можете добавить ngOnInit жизненный цикл и затем загрузить данные.Затем, в зависимости от параметра, вы можете перенаправить на любую страницу, которую вы хотите.Например, -

  ngOnInit() { 
    this.yourService.GetData()
        .subscribe(data => {
            if(data.id === student){
                this.router.navigate(['/student']);
            }else{ 
                this.router.navigate(['/Teacher']);
            }
        });
  }

добавить службу маршрутизатора как внедрение зависимостей в конструктор.

...