У нас есть приложение Angular + Ionic, которое мы планируем запустить через Кордову, но имеющее проблему с производительностью, которую мы пытаемся отследить.
Что мы видим в вкладке "Инструменты разработчика Chrome", когда вы запускаете локально или встроенное приложение, следующее:
- Повторяющаяся загрузка CSS
- XHR просит получить каждый файл шаблона, к которому подключается наш маршрутизатор Angular UI, без посещения маршрутов еще
В качестве примера:
И строка 3167 (указана звездой) из источника angular.js:
append: function(element, node) {
var nodeType = element.nodeType;
if (nodeType !== NODE_TYPE_ELEMENT && nodeType !== NODE_TYPE_DOCUMENT_FRAGMENT) return;
node = new JQLite(node);
for (var i = 0, ii = node.length; i < ii; i++) {
var child = node[i];
element.appendChild(child); *
}
},
Я никогда не видел ничего подобного - мы проверили все основы (дубликаты script/css include и т.д.), отключили Ionic-кеширование и т.д.
Я собираю вещи на шпильках, чтобы увидеть, что может быть причиной этого, но надеясь, что кто-то еще это видел, и может предложить некоторые советы о том, где начать искать.
ОБНОВЛЕНИЕ
Дубликат CSS, по-видимому, связан с нашим файлом index.html, который загружает наше приложение Angular, которое было неправильно указано как состояние в конфигурации маршрутизатора UI.
Таким образом, проблема с корнями - это ложные/неожиданные приводы XHR для всех статических файлов в приложении (angular ui шаблоны, шаблоны директив).