Когда код в $ (document) .ready () выполняется, можем ли мы рассчитывать на то, что все наши компоненты Angular будут там? - PullRequest
0 голосов
/ 06 декабря 2018

JQuery $(document).ready() запускается, когда HTML загружен и DOM можно безопасно манипулировать.Когда на нашей странице есть компонент Angular, можем ли мы рассчитывать на то, что к этому времени там будет все в его шаблоне?Даже внутри ng-if с?Даже вложенные компоненты?

Я знаю, что есть интерфейс OnInit, который компоненты могут реализовать, но в этом случае это не сработает;кодер не будет иметь доступа к любому компонентному коду.Я отправляю веб-приложение, в котором мы рассылаем миниатюрные, связанные версии нашего кода, но предоставляем клиентам рекомендации по добавлению своих настроек на страницы внутри тегов <script> в HTML.Давая им советы, могу ли я сделать какие-либо предположения или решения неизбежно приведут к куче тайм-аутов и повторных попыток при доступе к элементам DOM?

(Еще лучше - есть ли событие, к которому они могут подключиться?JS-скрипты вне компонента?)

1 Ответ

0 голосов
/ 06 декабря 2018

Глядя здесь , я нашел способ убедиться, что все ваши Angular загружены.В вашем главном контроллере представления добавьте этот код:

$scope.$on("$viewContentLoaded", function() {
    //Your code
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...