Задать вопрос
lavezzi1
@lavezzi1

Альтернатива html шаблонизотру от Bem?

Здравствуйте. Подскажите пожалуйста html шаблонизаторы очень похожие по своей логике к bem tools, то есть в котором можно через json создать блоки на странице и соответственно чтобы этот код конвертировался в html страницу.
  • Вопрос задан
  • 837 просмотров
Подписаться 3 Оценить 5 комментариев
Пригласить эксперта
Ответы на вопрос 3
IonDen
@IonDen
JavaScript developer. IonDen.com
Вообще это не общепризнанная практика генерировать HTML таким образом. Посмотрите на другие решения:

Препроцессоры
Jade, Haml

Шаблонизаторы:
habrahabr.ru/post/219873
Ответ написан
@ilyarsoftware
Любой, а точнее в вашем случае с поддержкой JSON, например NANO, хотя, грубо говоря, ближе к BH/BEMHTML, можно назвать json2html, пример использования json2html с CSS из bem-components:

var data = [
  {
    'text': 'BEM — BEM Easy Makeup',
    'url': 'https://ru.bem.info/',
  },
];

var template = {
  tag: 'a',
  class: 'button button_theme_islands button_size_xl',
  href: '${url}',
  children: [
    {
      tag: 'span',
      class: 'icon icon_social_twitter',
    },
    {
      tag: 'span',
      class: 'button__text',
      html: '${text}',
    },
  ]
};
document.body.innerHTML = json2html.transform( data, template );

Демо на jsfiddle

Уверен есть и другие, но все они не будут знать про БЭМ-термины и поэтому придется добавить хеперов для работы с боками, элементами, модификаторами и пр.

На текущий момент мне не известно ничего удобнее BH/BEMHTML, но если такой шаблонизатор появится, его опубликуют в разделе bem.info/Проекты на БЭМ.
Ответ написан
Комментировать
movasyl
@movasyl
semper tiro
lavezzi1, Jade / pug лучше ничего не найдешь. Месяц назад это уже проходил. Теперь не понимаю, как я без него столько лет жил :))
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы