Блок loader служит для загрузки и подключения скриптов по URL.
| Модификатор | Допустимые значения | Способы использования | Описание |
|---|---|---|---|
| type | 'js', 'bundle' |
JS |
Позволяет по URL получить и подключить JS-код или бандл. |
| Модификатор | Функция | Возвращаемое значение | Описание |
|---|---|---|---|
| js | loader({String} id, {String} url, [{Function} success], [{Function} error]) |
- | Загружает и подключает фрагмент JavaScript-кода. |
| bundle | loader({String} url, {Function} success, [{Function} error]) |
- | Загружает и подключает пакет, собранный из CSS и JS-файлов – «бандл». |
Блок реализован в технологиях:
jstypeПредоставляет набор функций для загрузки и подключение различных типов данных.
Допустимые значения: 'js', 'bundle'.
Способ использования: JS.
В зависимости от значения модификатора type блок loader позволяет получить по URL и подключить:
js – фрагмент JS-кода. bundle – пакет, собранный из CSS и JS-файлов – «бандл». type в значении jsПредоставляет функцию, позволяющую загрузить и подключить фрагмент JS-кода.
Принимаемые аргументы:
{String} url – URL загружаемого фрагмента JS-кода. Обязательный аргумент.{Function} success] – callback-функция, выполняемая по завершению загрузки кода.{Function} error] – callback-функция, выполняемая при ошибке в ходе загрузки кода.Не имеет возвращаемого значения.
Например, loader_type_js может использоваться для загрузки и подключения jQuery:
modules.define('jquery', ['loader_type_js'], function(provide, loader) {
loader(
'https://yastatic.net/jquery/2.1.4/jquery.min.js',
function() { provide(jQuery) });
});
Расширенный пример смотрите в блоке common.blocks/jquery библиотеки bem-core.
type в значении bundleПредоставляет функцию, позволяющую загрузить и подключить пакет, собранный из CSS и JS-файлов – «бандл».
Принимаемые аргументы:
{String} id – идентификатор бандла. Обязательный аргумент.{String} url – путь до файла бандла в формате URL. Обязательный аргумент.{Function} onSuccess – callback, вызываемая по завершению загрузки бандла. Обязательный аргумент.{Function} onError] – callback, вызываемая при неудачной загрузке бандла.Не имеет возвращаемого значения.
Спецификации технологии bundle находятся в процессе разработки. Для получения детальной информации пишите на форум.
_loadedФункция, подключаемая с модификатором type_bundle, обладает статическим методом – _loaded. Он используется как вспомогательный после успешной загрузки бандла.
Принимаемые аргументы:
{String} id – идентификатор бандла. Обязательный аргумент.Не имеет возвращаемого значения.