Сценарий
Если пользователь посещает наше приложение и пользователь уже вошел в систему, мы хотим перенаправить пользователя на маршрут /app
.
Мы будем использовать Firefly Semantics Slice Object Store для реализации реактивной обработки событий.
Подход
Приведенный ниже служебный метод onAuthRedirectToApplication
принимает аргумент route
и обращается к нему, когда пользователь уже вошел в систему.
/** * Redirect the user to the application * when the user is authenticated. * @param route */ public onAuthRedirectToApplication(route:string) { this.s.OS.S.IS_AUTHENTICATED.obs.subscribe(auth => { auth && this.r.navigate([route]) }) }
Обратите внимание, что когда приложение загружается, оно должно проверить, вошел ли пользователь в систему, и если это так, выполнить put
в экземпляре Slice Object Store, моделирующем параметр IS_AUTHENTICATED
. Например:
this.s.OS.put(this.s.OS.S.IS_AUTHENTICATED, true)