1
У меня есть служба, которая проверяет, имеет ли пользователь разрешения на открытие маршрута.Угловой 2 canActivate async
@Injectable()
export class GuardService implements CanActivate{
user: User;
constructor(private _userService: UserService) {
}
canActivate(): any{
return this._userService.getUser().subscribe(user => {
if(user.user_type == 'admin'){
return true;
}
return false;
});
}
Но проблема в том, что она никогда не проходит. Проблема в этом наблюдаемом, но я не знаю, как с этим справиться. Как я могу это достичь? Заранее спасибо
Спасибо. Просто измените подписку на карту, потому что subscribe не имеют метода first(). Отредактируйте его, и я подтвержу ответ;) –
Справа. Спасибо, пропустил этот. –
'subscribe' не будет работать здесь вообще. Маршрутизатор должен иметь возможность подписываться. 'С' map' вам может не понадобиться 'first'. Я думаю, что это изменилось некоторое время назад (не уверен). –