Асинхронизатор: асинхронная загрузка компонентов
15000 ₽
Мы продаем лицензии по официальным ценам вендора. Но при покупке тарифов через нас вы получите бонусы на 20 % от стоимости покупки в виде услуг компании Адена.
Модуль позволяет производить отложенную загрузку компонентов, тем самым ускоряя загрузку страницы. Демонстрация работы в видео в конце страницы!
Логика работы: 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/
Логика работы: 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/
Статьи
Управление проектами
На что обращать внимание малому бизнесу при выборе CRM-системы
Упущение клиента — потеря денег, его игнорирование после сделки — двойная потеря. Чтобы разобраться в системах оптимизации, перестать думать, что это что-то потустороннее, сделать выбор и не испугаться внедрить — наша небольшая статья.