Ads
Comments 18
+1
А у нас сервер отдаёт JSON, а отрисовкой и клиентским поведением ведает толстый клиент.
0
Тоже вариант, мы проводим эксперименты с JSON-LD для данных, но на лэндингах пока не используем.
0
А почему? Честно говоря начиная статью только эта мысль и пришла в голову, вы же используете html, который по сути xml
Плюсы от jsona:
  1. Меньше весит
  2. Легче работа с данными
  3. Легче парсить на стороне клиента

Минусов не нахожу вовсе
0
Есть ещё такой нюанс как видимость поисковыми машинами)
HTML они хорошо видят, JSON-LD видят, но нужно выбрать правильную структуру и убедиться что она правильно понимается поисковыми системами. В продакшен пока такое не выкатываем, но есть в планах.
0
Я так и не понял, что именно заставляет вас генерировать страницу на стороне пользователя?
0
Так на много проще и удобнее, попробуйте — увидите почему и на сколько.
0
Макет расчитан на ширину 1100px+, при меньшем размере он переключается в мобильную версию. У вас некоторые изображения переключились, а некоторые нет. Не подскажете что за браузер и его версия?
0
Какой-то очередной баг Safari, он почему-то не выходит с мобильного режима при растяжении экрана, точнее выходит, но как-то не до конца.
Разберемся, поправим, спасибо что сообщили!
0
Я всегда ценил лэндинги за скорость. У вас быстро, но уделить время оптимизации стоит:
— объединение JS
— объединение CSS
— спрайты
— минификация HTML кода.
Кеширование не нужно, так как у вас мало возвращающихся пользователей.

Да и методы которые вы используете медленнее, чем генерация HTML на сервере.
0
Минификация HTML кода сомнительна, остальное присутствует в полной мере (даже объединение веб-компонентов, что Facebook называет Vulcanization), по-моему это уже само собой разумеется в современном вебе, HTTP/2 ведь ещё не пришел повсеместно)

Да, наши методы медленнее генерации на сервере, но гибкость и скорость разработки это компенсирует с лихвой.

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

Кеширование не нужно, так как у вас мало возвращающихся пользователей.

Вынужден не согласиться, во-первых кэширование не мешает, а во-вторых благодаря тому что раздачей кэшированной статики занимается CDN, получается выгодно и полезно как нам, так и посетителю сайта. Банально быстрее загрузка страницы и меньше нагрузка на наш сервер.
+7
К сожалению не понял, почему для относительно неинтерактивного контента (лэндинг) удобнее использовать шаблонизацию на стороне клиента?
0
при ресайзе браузера горизонтальный скролл присутствует почти всегда.
Строка логотипов сливается, часть вылезает за вьюпорт.
Хромиум@linux.

По сути — примитивный html мне кажется лучше 8-)
Как-то звучит диссонансом: с одной стороны — «с минимально необходимым количеством тэгов», с другой — полтора метра и более 4 секунд на статическую страничку…
0
при ресайзе браузера горизонтальный скролл присутствует почти всегда.

Да, есть такое (впечатление складывается что vw единицы считаются не корректно и не учитывают появившийся вертикальный скролл), при этом на реальном телефоне баг отсутствует. Страница делалась из предположения, что пользователи имеют экран на десктопе как минимум 1200px

По сути — примитивный html мне кажется лучше 8-)

Так там и есть обычный HTML, принципиально ничего нового, просто поделено на логические переиспользуемые кусочки

Как-то звучит диссонансом: с одной стороны — «с минимально необходимым количеством тэгов», с другой — полтора метра и более 4 секунд на статическую страничку…

Отнюдь, большую часть из «полтора метра» это растровая графика и кастомные шрифты, от который никуда не деться. Сами веб-компоненты без картинок — это пару кибибайт в gzip
0
В ответ я могу только спросить:
* версия?
* ошибки в консоли браузера?
* работает ли в безопасном режиме (без расширений)?

Все проверенные версии от стабильной до Nightly работают отлично.
Only those users with full accounts are able to leave comments.  , please.