#angular #angular-material #architecture
Вопрос:
У меня есть два модуля: один основной модуль,другой общий модуль.
Основной модуль содержит универсальные одноэлементные службы и компоненты,которые загружаются изначально, такие как вход в систему, панель навигации.
Общий модуль содержит повторно используемые компоненты,каналы и службы.Также он импортирует модуль материалов.
Теперь в основном модуле у нас есть компоненты входа и панели навигации, для которых требуется модуль материалов.И модуль материалов импортируется в общий модуль.Поэтому мне нужно импортировать общий модуль в основной модуль. Но в соответствии с руководящими принципами Angular мы не должны импортировать общий модуль в ядро.
Итак, как я могу решить эту проблему, чтобы избежать импорта общего модуля в основной модуль.
Ответ №1:
Использование модульного подхода и ленивой загрузки модулей. Лучше всего импортировать в каждый модуль функций необходимые компоненты/модуль, необходимые для этой функции.
В вашем случае в модуле core вы можете просто импортировать необходимые элементы материалов, необходимые для работы навигационной панели и входа в систему, без дополнительных затрат на загрузку всего в модуле материалов (или общем модуле) в ядро.
Комментарии:
1. Спасибо за ваш ответ. Это лучший способ избежать дублирования общего модуля в ядре