Я предполагаю, что LocalStorageService
- ваша собственная библиотека, поэтому я не учел это в ответе.
После того, как пользователь успешно вошел в систему, сохраните userId и userName в локальном хранилище следующим образом:
userData.forEach(item => {
this._loginService._userid = item.UserID;
this._loginService._username = item.UserName;
//save to localStorage
localStorage.setItem(userId, item.UserID);
localStorage.setItem(userName, item.UserName);
this._router.navigate(['/enquirydetails']);
});
В вашем методе выхода из системы вы удаляете пользовательские значения из localStorage.
logout() {
this.router.navigate(['Login']);
this.storage.clear('boundvalue');
this.storage.clear('uservalue');
this.storage.clear();
// delete from localStorage
localStorage.removeItem(userId);
localStorage.removeItem(userName);
}
Чтобы проверить, вошел ли пользователь, я бы предложил использовать Route Guard. В рамках этого вы можете получить значения из localStorage и проверить, если пользователь вошел в систему.
localStorage.getItem(userId);
localStorage.getItem(userName);
Вы можете узнать о Страже маршрута здесь: https://angular.io/guide/router#milestone-5-route-guards
Примечание: Выше приведен только пример, так как я не знаю о вашем полном заявлении. Надлежащая аутентификация пользователя с использованием sessionId / userHash должна быть сделана.