2016-03-15 3 views
0

Всякий раз, когда страница просматривает фактический дайджест (всего около 600 наблюдателей), загрузка страницы примерно на 6 раз медленнее на ipad и на рабочем столе (рассчитывается с помощью console.time).Почему AngularJs намного медленнее на iPad (vs desktop)?

Моих текущие исследования:

  • Существует намеренная задержка при прикосновении кнопки на IPad, который был установлен с помощью Fastclick.
  • Я не думаю, что это связано с сенсорным событием, как на сенсорном экране с мышью, и скорость примерно такая же (при использовании мыши и касания).
  • Как настольные, так и ipad, похоже, кэшируют ответы, как и следовало ожидать.
  • Используя инструменты разработчика, похоже, что это связано с чем-то в дайджесте, я не мог найти никаких добавлений для сафари (похоже, не существует), чтобы разбить время в дайджесте.
  • Нет проблем с сафари на рабочем столе или в любом другом браузере. Проблема существует на нескольких iPad.
  • Я слышал, в том числе JQuery замедляет его и попытался удалить его, но та же проблема существует

Я не ищу для общих способов повышения производительности, но исправить/устранить эту .. ошибка? У меня кончились идеи, пожалуйста, помогите! : D

Редактировать: Я не использую ионный, это веб-интерфейс.

+0

Почему этот вопрос получил отрицательный голос? –

+0

Слишком много проблем, слишком мало кода. Вы даже не потрудились сказать нам, на каком iPad вы тестировали. Мы не можем воспроизвести вашу проблему с вопросом, написанным таким образом. См. [Ask] – Blazemonger

+0

ха-ха, вы хотите, чтобы я опубликовал все свое приложение здесь? Попробуйте любой iPad с 1000+ наблюдателями, и вы это увидите. Я хочу, чтобы этот пост (без негатива) был на переполнении стека, прежде чем мы начали. Возможно, нам придется переписать наше приложение, и я действительно разочарован. AngularJs не упомянула об этом. Через секунду я заберусь в магазин, чтобы проверить другие iPads, чтобы узнать, будет ли что-то работать, но это проблема с iPads (медленность Javascript). –

ответ

1

Похоже, я нашел проблему, ее не angularjs, а Javascript. На iPads javascript работает намного медленнее (http://ajaxian.com/archives/ipad-javascript-shockingly-slow).

Подтверждено запуском Google Octane (https://developers.google.com/octane/). Обои для рабочего браузера Safari: 29942, iPad Safari Browser: 6795.

Этот вид соса.

EDIT:

опробованы различные IPADS:

Android (с помощью Chrome V49 (последнее)):

  • Galaxy Tab S2 9,7: Octane Score 6901
  • Galaxy Tab 8,0 : Octane Score 2650
  • Galaxy Tab A 9.7: Octane Score 2886
  • Samsung Galaxy Tab: Octane Score 2622

Chromebook (с помощью Chrome V49 (последнее)):

  • Lenovo Chromebook: Octane Score 8641
  • асы 2в1 Touch- экран: Octane Score 7378
  • HP Chromebook: Octane Score 8688

Ip объявление (Safari)

  • Ipad Pro: Octane оценка 20.632
  • Ipad Air 2: Octane оценка 10,601
  • Ipad Mini 4: Octane оценка 9,902

Как Blazemonger отметил, статья старая но точка по-прежнему верна, javascript медленнее на iPads/Tablets, особенно на Android.

Мы обнаружили около 300 наблюдателей, количество магических октанов составляет 10 000 (конечно, есть много других переменных, но дать кому-то идею). Так что, пока вам не нужно, чтобы ваше приложение было быстрым на всех iPad/планшетах, вы можете положиться на AngularJs (хотя я думаю, что реальная проблема - просто тяжелый javascript).

+0

Эта статья Ajaxian составляет почти шесть лет на момент написания этой статьи. – Blazemonger

0

Когда вы используете ионный, вы делаете предварительно скомпилированное приложение в Интернете, поэтому у вас есть еще один слой для обработки (iOs-> browser -> webApp), в компьютере браузер - всего лишь один слой (браузер -> webApp)

WebApp работает медленнее, чем собственные приложения.

+0

Я не использую ионный, его все веб-сайт –

Смежные вопросы