2017-02-14 13 views
0

Я запускаю приложение angularjs и не могу понять, почему моя страница медленно загружается. CSS и JS файлы все нагрузки быстро, но есть большая задержка между тем, что и когда HTML нагрузки, где приложение просто кажется зависнет ничего не делаяИнициализация страницы Slow Angularjs - длительная задержка до html loading

enter image description here

headertemplate.jtml, footertemplate.html, и notelist.html является парциальными загружаются, чтобы составить мнение о

enter image description here

+0

Возможно, это потому, что вы вызываете внешний url. Загрузите и используйте локальную библиотеку только для шрифта. – digit

+0

Я думал, что может быть, но удаление шрифта ничего не меняет. В html все еще есть этот период ожидания – KDogg

+1

Есть еще 1. Parse.serverurl. Попробуйте прокомментировать эту строку, каков результат. Это все так же? – digit

ответ

0

Угловой использует Ajax для получения шаблонов. Вы должны иметь возможность просмотреть вкладку сети в инструментах разработчика, чтобы увидеть запрос ajax для каждого шаблона. Это может дать вам понять, что такое задержка.

Я не уверен, почему он так долго их принимает, но одним из способов ускорить это было бы предварительное кэширование шаблонов с помощью инструмента, такого как HTML2JS. Таким образом, ваши шаблоны - это еще один JS-файл, который вы включаете вместе с вашим программным кодом, и шаблоны загружаются, как только загружается ваш программный код. Это увеличит ваш первоначальный размер загрузки, но значительно улучшит скорость выборки шаблонов.

0

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

https://docs.angularjs.org/api/ng/service/ $ templateCache

Существуют различные глотком и Грунт модули для автоматизации этого процесса. https://www.npmjs.com/package/gulp-angular-templatecache https://github.com/ericclemmons/grunt-angular-templates

Кстати вы делаете какие-либо серверные вызовы в angular.forEach, по какой-то причине они не отображаются на вкладке сети (ИДК почему ?? СОО) Или может быть вы используете решительность в конфигурации состояния ui-router, которая занимает время, чтобы активировать состояние и вызывать html partial.