Частичное в Coffee HAML (.hamlc)

Я использую backbone.js для рельсового бэкэнда с HAML Coffee, который скомпилирован haml_coffee_assets. В моих шаблонах есть дублирование.

Есть ли способ создать рельсовые партиалы, чтобы высушить мои шаблоны?

Дополнение: Могу ли я сделать content_for(:something) в кофе ХАМЛ?

1 ответ

Решение

Здесь нет content_for помощник в Haml Coffee, но вы можете просто визуализировать другой шаблон в шаблоне.

Без локальных переменных

Например, у вас есть шаблон test:

%p My Partial
%ul
  %li Is included

Вы можете включить его в другой шаблон, например так:

%p Another template
!= JST['test']()
%p That includes a partial

Хитрость заключается в том, чтобы освободить отображаемый HTML с помощью !=,

С локальными переменными

Чтобы передать локальные переменные, просто отправьте их JST функция. Если это ваше частичное (articles/_comments.jst.hamlc):

%h2=@title
%p=@content

Тогда это может быть ваш шаблон:

%h1 Comments for this article
- for comment in @article.comments 
  != JST['articles/_comment'](comment)
Другие вопросы по тегам