Асинхронизатор: асинхронная загрузка компонентов

Как мыы генерируем фото

VPS на быстром хостинге

качества настоящего маркетолога в картинках


Каталог продуктов в которых я уверен, готовые сайты и решения из Marketplace 1С Битрикс

Асинхронизатор: асинхронная загрузка компонентов

В наличии Артикул: delight.async
15000
В корзину В корзине
Задать вопрос
Модуль позволяет производить отложенную загрузку компонентов, тем самым ускоряя загрузку страницы. Демонстрация работы в видео в конце страницы!

Логика работы:
1. Вместо HTML исходного компонента выводится заглушка.
Заглушка может быть какая угодно - для каждого шаблона исходного компонента можно сделать свой шаблон заглушки. Важно, чтобы у контейнера этой заглушки, был определенный набор data-атрибутов (их можно найти в шаблоне .default).
2. Вместе с заглушкой выводится JS-код с функцией асинхронной загрузки исходного компонента.
Формирование этого JS-кода было убрано внутрь компонента, чтобы не дублировать его от шаблона к шаблону.
3. JS-функция асинхронной загрузки вызывается в соответствии с выбранным режимом работы.
Доступные режимы: сразу (NOW), после загрузки DOM (ONDOMLOAD), LazyLoad (LAZYLOAD)
4. В результате исполнения JS-функции асинхронной загрузки, HTML-заглушка заменяется на HTML-код компонента, полученный по AJAX.
5. После замены заглушки на актуальный код вызывается JS-событие:
document.dispatchEvent(new CustomEvent('asynchronizer.afterLoad', {
    detail: {
        component: component,
        template: template,
        params: response.data.PARAMS
}));

Демонстрация работы модуля:
https://rutube.ru/video/717c8c553e45e5a9c2e35d3a53d01d64/

Характеристики

Бренд Дмитрий Кротов
Вернуться к списку