Форум

Методология

Инструментарий

Платформа

Сообщество

О bem-xjst

Что такое bem-xjst?

bem-xjst — шаблонизатор для тех, кто ведёт веб-разработку в рамках БЭМ-методологии.

Шаблонизатор содержит два движка:

  • BEMHTML — для преобразования BEMJSON в HTML.

  • BEMTREE — для преобразования BEMJSON с данными в BEMJSON с БЭМ-деревом для последующего преобразования с помощью BEMHTML.

В основе шаблонизатора лежат декларативные принципы из XSLT (eXtensible Stylesheet Language Transformations). По аналогии было придумано название XJST — eXtensible JavaScript Transformations.

Для работы с шаблонизатором вам стоит изучить:

Отличительные черты

  • Шаблоны расширяемы: их можно переопределить или доопределить.

  • Для написания шаблонов используется сопоставление с образцом (pattern matching) по значениям и структуре входных данных.

  • Обходит входные данные по умолчанию.

  • Есть встроенное поведение рендеринга по умолчанию, даже если пользователь не добавил шаблонов.

  • Написан на JavaScript — можно проводить проверки качества и корректности кода, пользоваться всей инфраструктурой JS.

  • Не требует компиляции шаблонов.

  • Предоставляет API для добавления шаблонов в рантайме.

  • Работает на сервере и клиенте.

Читать далее: быстрый старт

Если вы заметили ошибку или хотите чем-то дополнить статью, вы всегда можете или написать нам об этом на Гитхабе, или поправить статью с помощью prose.io.