Привет,
Рад сообщить, что наконец-то вышел долгожданный релиз enb-bh
версии 1.0.0
.
О том, что же важного и вкусного произошло, расскажу в этом посте.
Поддержка BH 4.x
Пакет поддерживает версию шаблонизатора BH 4.1.0 и выше.
Для настройки шаблонизатора BH вместо специальных опций (jsAttrName
, jsAttrScheme
и clsNobaseMods
) теперь одна — bhOptions. Она принимает любые возможные натройки, реализованные в самом шаблонизаторе, включая новые jsCls, jsElem, escapeContent, delimElem, delimMod, shortTags.
О том, как перейти на новую версию BH, читайте в руководстве по миграции.
Технологии
Технологии bh-client
, bh-client-module
и bh-server-include
объединены в одну технологию bh-bundle.
Она собирает шаблоны в один файл, предназначенный для работы как в браузере, так и в Node.js.
Для работы только в Node.js осталась технология bh-server
, которая была переименована в bh-commonjs.
Если запутались в том, какую технологию выбрать, читайте об этом в руководстве по миграции.
Подключение сторонних библиотек
Появилась возможность подключать сторонние библиотеки. Это можно сделать с помощью опции requires.
Пример подключения:
Подключаем библиотеку moment
с помощью модульной системы CommonJS:
{
requires: {
moment: {
commonJS: 'moment'
}
}
}
Применяем подключённую библиотеку в шаблоне блока:
var moment = bh.lib.moment; // Библиотека `moment`
bh.match('post__date', function (ctx) {
// Время в миллисекундах, полученное с сервера
var date = moment(ctx.param.date).format('YYYY-MM-DD HH:mm:ss');
ctx.content(date);
});
Подробнее обо всех остальных изменениях читайте в истории изменений.
Перед обновлением рекомендуем ознакомиться с руководством по миграции.
Вопросы про сборщик ENB традиционно ждем на нашем форуме с меткой enb.
Приятного использования и Stay BEMed!