Модуль ввода angularjs после инициализации приложения

Привет всем, я пытался сделать это без удачи в течение нескольких дней.

есть ли в любом случае асинхронно загружать некоторые js-скрипты (которые содержат угловые модули) и вставлять их в работающее приложение после его инициализации.

По сути, у меня есть контейнерный DOM-элемент, который будет заполнен некоторым HTML-кодом, запрашиваемым с сервера. На основе этого HTML-кода я решу, какие js-файлы (модули) потребуются, затем загружу их асинхронно, вставлю модули в угловое приложение и скомпилирую контент с новыми внедренными модулями.

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

Любая помощь здесь?

2 ответа

Это некрасиво, но работает: http://jsfiddle.net/MzseV/7/

Это в основном работает путем итерации модуля _invokeQueue участвовать и применять функции в рамках использования провайдеров, используемых для регистрации сервисов, контроллеров и директив (ПРИМЕЧАНИЕ: они должны быть захвачены до начальной загрузки AFAIK). Это, вероятно, также перерегистрирует все, что вы ранее зарегистрировали, так что вы можете захотеть, чтобы какая-то эвристика выбрала только те, которые вы хотите, хотя я не уверен, есть ли какие-либо повреждения при перерегистрации.

Опять же, это довольно отвратительно и хакерски, поэтому я бы использовал только в крайнем случае.

Вот вопрос, который я задал и позже ответил об этом.

РЕДАКТИРОВАТЬ: только что заметил, сколько лет этот вопрос, надеюсь, он все еще кому-то помогает.

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