Я полагаю, что существует несколько способов избежать этой проблемы циклической зависимости в зависимости от вашего конкретного проекта, но одним из них может быть следующий: вместо того, чтобы быть компонентом, который открывает модальный режим, этот компонент может сообщить родителю страница для фактического открытия модального (путем отправки события на родительскую страницу при нажатии кнопки). Таким образом, родительская страница будет импортировать модальный модуль (который может иметь смысл, например, в контексте вашего приложения, если родительская страница представляет собой список домашних животных, а на модальной странице показаны сведения о каждом домашнем животном).
Я спорю между тем, чтобы пойти с этим решением или просто предоставить каждому компоненту свой собственный модуль, и импортировать только те компоненты, которые я на самом деле использую, в каждый другой компонент / страницу / модал для уничтожения циклической зависимости. Может быть, наличие модуля «базовых» компонентов для всех основных вещей, которые не имеют много зависимостей
Я рад, что вы упомянули этот подход, потому что это именно то, что мне нравится делать в проектах, над которыми я работаю. Я обычно предпочитаю каждый компонент иметь свой собственный модуль, чтобы контролировать, какие компоненты импортируются на каждой странице .
Обычно случается, что есть модуль "основных" компонентов, который импортируется везде, но проблема в том, что некоторые другие разработчики могут добавлять компоненты туда, потому что они используются более чем на одной странице, но это приводит к тому, что эти компоненты импортируются в десять или более страниц, даже если эти страницы используют только один или два компонента из этого модуля.
Это зависит от того, насколько велик ваш проект, сколько компонентов есть и как часто они импортируются другими страницами, но когда я говорю о мобильных приложениях (особенно о гибридных мобильных приложениях), я думаю, что самое важное - это уметь загружать страницы как можно быстрее, поэтому импорт только тех компонентов, которые действительно нужны каждой странице, звучит как правильный путь.