Добрый день, извините, казалось бы, широкий вопрос.
Я создаю приложение ExtJS4, используя php и sql для пользовательских данных. Все прошло хорошо, и однажды я заметил эту ошибку в консоли java:
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check http://xhr.spec.whatwg.org/.
Вначале я не беспокоился, так как приложение довольно хорошо загружалось при тестировании в локальной сети. Однако, как только я загрузился на онлайн-сервер и протестировал его, приложение загрузилось очень медленно, и иногда оно вообще не загружалось.
Я не помню, чтобы называть XMLHttpRequest в любом месте приложения, поэтому я ошеломлен тем, как и почему я получаю это предупреждение внезапно.
Единственный способ подключения к моей базе данных и обратно – через магазины.
Кроме того, в качестве побочного вопроса, есть ли способ ускорить загрузку приложений ExtJS4? Я минимизировал размер изображений / значков, которые я использую, и я думаю, что проблема связана с магазинами, но ни один из моих магазинов не установлен на автозагрузке.
Любая помощь очень ценится. Спасибо.
У меня была эта ошибка некоторое время назад. Это вызвано Ext.Loader, который динамически загружает классы Ext.
Я мог бы решить это, добавив необходимые классы в оператор Ext.require ([…]) в основном файле js моего приложения (например, app.js).
Документы для Ext.Loader объясняют, когда и почему происходит асинхронная и синхронная загрузка.
Не уверен в главном вопросе, никогда не видел этого раньше с приложениями extjs 4, которые я написал.
Для более быстрой загрузки приложения вы должны использовать sencha CMD для создания конкатенированной и модифицированной версии вашего источника для использования в производственной среде.
редактировать
Я просто наткнулся на это SO – «Синхронный XMLHttpRequest в основном потоке устарел», используя nodejs app.get или http-server
Переговоры по одной и той же проблеме, но с другой структурой и комментариями, указывают на ее ошибку на стороне клиента. Вы недавно изменили то, как вы извлекаете данные с сервера?