Угловой 5- Где должен сидеть код выхода? - PullRequest
0 голосов
/ 12 июня 2018

Это скорее вопрос проектирования, чем вопрос программирования.

Я хочу создать функцию выхода из системы в Angular 5. Функция выхода из системы будет содержать следующий псевдокод:

  1. Очиститьаутентификация локального хранилища токен JWT
  2. Перенаправление на страницу входа

У меня вопрос;где должен быть приведенный выше код;В компоненте или в сервисе?

Я считаю, что сервис должен содержать логику, которая взаимодействует только с бэкэндом, а компонент должен содержать логику представления (поправьте меня, если я ошибаюсь).

КакКод выхода из системы - это не логика, связанная с бэкендом, в идеале он должен находиться в компоненте.Но если мне придется выполнить ту же самую операцию выхода из системы где-то еще, будет проще вызвать службу и выполнить код, чем снова писать те же две строки в каком-либо другом компоненте.

Так, где следуеткод действительно будет?

1 Ответ

0 голосов
/ 22 апреля 2019

вы можете создать свой метод выхода из службы внутри службы, например:

logout() {
this.localStorageService.remove('currentUser');
this.localStorageService.clear();
this.subject.next(false);
}

Вызовите этот метод службы из компонента выхода из системы.не забудьте указать путь выхода из системы в вашем сервисе.Для перенаправления страницы входа в систему вы можете сделать:

location.href = "/ loginUrl";

из метода выхода из системы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...