Должны ли функциональные модули иметь собственный перехватчик и Http-сервис?

#angular

#angular

Вопрос:

Целесообразно ли иметь сервисы для http-вызовов api и перехватчики для этих http в функциональных модулях? Или эти сервисы должны храниться где-то, как в основных модулях?

Насколько я понимаю, если мы сохраняем службы, связанные с функцией, в ее модуле, то это помогает объединить больше связанных служб и компонентов. Однако я часто сталкивался с использованием основного модуля, в котором должны быть все перехватчики и сервис, связанные с http.

Что будет хорошей практикой?

Ответ №1:

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

Когда вы используете сервис только в одном функциональном модуле, поместите его в этот модуль. При повторном использовании сервиса в нескольких функциональных модулях поместите его в «общую» папку. Однако старайтесь держаться как можно ближе к своим функциональным модулям.

Перехватчики являются глобальными для вашего приложения, храните их в «общем» или «основном» расположении в вашем проекте.

Для справки: модуль общих функциональных возможностей Angular Styleguide

Для справки: Основной функциональный модуль Angular Styleguide