Как быть с динамическими компонентами и розеткой роутера?

Рассмотрим состав компонентов:

appComponent> router-outlet (A, B, C)> a, b,c (согласно выбранному), где:A, B, C: динамически загружать a, b,c (загрузчики динамических компонентов)a, b,c: Динамически загружаемые компоненты

Цель этого упражнения - иметь версию компонента a, b,c для разных регистров (предположим, пользователей), чтобы информация, которую я вводю в каждой форме a, b,c, всегда доступна в памяти для каждого пользователя.

Я использую маршрутизатор-выход для отображения ViewContainerRef, который создает экземпляры "дочерних маршрутизируемых" компонентов, это означает, что если я хочу иметь маршруты a, b,c, я загружаю их в выход маршрутизатора, используя A, B, C в качестве компонентов только с ViewContainerRef, а затем внутри каждого из них я загружаю динамические компоненты a, b,c соответственно (которые хранятся в централизованной службе, если не были созданы ранее), и, прежде чем покинуть маршрут, я реализую canDeactivate, чтобы отсоединить текущее представление из ViewContainer, поэтому экземпляр компонента a, b,c никогда не уничтожается, и я могу вставить их в загрузчик, когда я вернусь к этому определенному маршруту для этого определенного пользователя.

Это правильный подход? Или мне однозначно не стоит смешивать загрузчики динамических компонентов с роутером?

Обновление: что, если я хочу иметь еще один роутер в пределах a, b,c, который приведет меня к c, d? У меня проблемы, потому что кажется, что он не может распознать маршрутизаторы, размещенные на a, b,c, поэтому загрузчики динамических компонентов C, D не отображаются

0 ответов

Другие вопросы по тегам