Как уничтожить приложение Angular?

#angular #requirejs #ngondestroy

#angular #requirejs #ngondestroy

Вопрос:

У меня есть угловое приложение, это простое приложение с маршрутизацией. Я должен включить свое приложение как часть другого веб-сайта, веб-сайт загружает приложение в модальное после загрузки всех зависимостей через RequireJS.

Открытие приложения в модальном режиме работает нормально.

Когда модальное отклоняется (и узел, который мы отклоняем с модальным) Я полагаю, что приложение уничтожено.

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

После первого использования я получаю пустую страницу.

Итак, я предполагаю, что мне нужно принудительно уничтожить приложение при модальном отключении.

Есть предложения?

=== ОБНОВЛЕНИЕ ===

Я попытался следовать двум разным путям.

  1. использование RequireJS undefine

    Я получаю сообщение об ошибке, и, похоже, оно не работает

  2. включить main.js через Ajax-запрос

    Я не получал никаких ошибок, но, похоже, это не работает

В любом случае я вижу, что приложение Angular, похоже, все еще работает, я могу читать сообщения в журнале консоли, отправленные контроллерами Angular, но рендеринг не работает.

При включении main.js во второй раз я прочитал все сообщения журнала консоли, кроме сообщения в главном конструкторе.

Комментарии:

1. Я считаю, что ваш вопрос требует расследования и отладки того, что действительно происходит. То, что, я думаю, будет работать в большинстве случаев, — это угловые элементы . Я считаю, что если вы сделаете свое угловое приложение угловым элементом, оно будет работать нормально

2. Почему вы используете requirejs с angular? Вы имеете в виду angularjs?

3. @Andrey после некоторого теста кажется, что приложение все еще работает, я вижу журнал для какого-либо вызова ajax и так далее, Но рендеринг на странице отсутствует. Тег <app-root> добавляется к модальному, когда он был открыт, и удаляется, когда модальный был отклонен.

4. @mwilson — это требование сайта, включающего приложение.

5. Я все еще думаю, что angular elements — лучший вариант для вас