Динамическое использование углового ограждения маршрута

#angular #angular-router-guards

Вопрос:

Есть два пути, скажем, один есть guest-login/:id1/:id2 , а другой есть shared/:id1:id2 . Оба эти пути соответствуют разным компонентам. У меня есть еще один компонент с именем Компонент входа ( main login ), и все пути защищены, кроме main login и guest-login .

У меня сейчас такая ситуация. Я хочу защитить shared/:id1:id2 путь и хочу перенаправить его на main login страницу, если пользователь напрямую попадет на путь. Этого можно достичь с помощью canActivate: [AuthGuard] . Но когда пользователь входит в guest-login/:id1/:id2 систему , эта canActivate: [AuthGuard] защита должна быть удалена для shared/:id1:id2 пути, и гостевой пользователь может получить доступ shared/:id1:id2 к пути.

Как этого можно достичь?