Как в Angular организовать методы, общие для нескольких контроллеров?

Такой пример:
В SPA есть экран логина и экран регистрации. У обоих экранов собственные контроллеры: LoginCtrl и RegisterCtrl.

На обоих экранах есть возможность залогиниться через соцсети. Соответственно вызываются абсолютно идентичные методы: loginFb(), loginVk и т.д.

Как уйти от дублирования одинаковых методов в разных контроллерах?
Создавать сервис LoginViaSocial?
Создать контроллер приложения AppCtrl, который будет родителем для LoginCtrl и RegisterCtrl, и вынести методы в него?

UPD
Вот неплохой пост по теме вопроса.
  • Вопрос задан
  • 2357 просмотров
Решения вопроса 2
miraage
@miraage
Старый прогер
Философия такая, что вся логика, на мой взгляд, должна храниться в сервисах.
А контроллер лишь связывает интерфейс с этими сервисами.
Ответ написан
Комментировать
yamaoto
@yamaoto
la programmeur
Я думаю, лучше всего будет разместить код в сервисе.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы