модули? Как храните модели, сервисы, конфиги: централизовано или для каждого модуля отдельно? Есть ли у вас мастер-страницы и как вы их используете? Как выглядит структура папок вашего проекта?
Я, например, разбиваю свой проект так:
./core - импортирую один раз, использую для сервисов авторизации, логгирования, конфигов, др.
./configs
./auth
./other-features...
core.module.ts
./shared -импоритрую в каждый feature-module, использую для переиспользуемых фич, моделей
./models
./go-back
./grid-list
./other-features...
shared.module.ts
./public - публичные страницы приложения, доступ к которым разрешен всем
./modules * - home, help, etc
./public-master - модуль с мастер страницей для публичных маршрутов
public.routing.ts
public.module.ts
./secure - защищенные страницы приложения, доступ к которым по правам
./modules * - settings, approval, etc
./secure-master - модуль с мастер страницей для публичных маршрутов
secure.routing.ts
secure.module.ts
* - модули имеют свою структуру, например модуль settings
./modules/settings
./models - модели
./services - сервисы
./features - компоненты модуля
./pages - страницы модуля (всегда есть мастер страница для модуля, например settings-master.page.ts, представляет собой компонент)
settings.module.ts
settings.routing.ts
Один из вопросов, который меня сейчас волнует: я задумался вынести все endpoint-сервисы (сервисы для запроса данных с сервера) и все endpoint-модели куда-нибудь в корень, чтобы хранить централизованно. Зачем? Стали возникать случаи, когда нужен сервис или модель lazy-модуля в другом lazy-модуле. Что посоветуете, что подскажете, посмотрели вопросы в самом верху?:)
Имхо, такая сложная структура избыточна для небольшого проекта.
Обсуждают сегодня