Задать вопрос

Как в AngularJS получить ссылку на $compile вне Angular-инструкций?

Так сложилось, что заинъектить $compile мне некуда. Т.е. есть абсолютно не связанный с angular код, который получает HTML, содержащий angular-контроллер и мне нужно его скомпилировать. App при этом на странице уже существует.
Как корректно получить ссылку на $compile?
  • Вопрос задан
  • 2444 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Так а толку, если у вас нету приложения с контроллером? Без них даже если вы и возьмите $compile то ничего толком сделать не сможете. Если же оно есть, то angular.bootstrap
Ответ написан
Если на странице уже есть приложение Angular, то можно завести элемент с котроллером с нужными зависимостями (включая $compile) и методами обработки ваших данных.

Получить этот контроллер можно с помощью выражения вида angular.element(element).controller(). И можете делать с ним всё, что нужно.

И не забывайте обращаться к вашему контроллеру через scope.$apply(), если ваши обращения будут менять содержимое scope. Сам scope элемента можно получить так же, как и контроллер.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы