Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Одна директория с блоками для всех проектов на Ruby on Rails.
bem-tools не подходит по вполне понятным причинам
Про deps.js можно забыть.
Чтобы его использовать можно было бы подключить в рельсы V8 и компилировать шаблоны. Но тогда от рельс мало чего остается и это далеко не Ruby way.
Уверены?
Я не совсем понимаю, по каким.
Забыть про автоматическое разруливание зависимостей и разгребать их руками?
Рельсы — это разве только шаблоны?
Вообще я не поддерживаю политику зависимости блоков друг друга.
Порядок сборки блоков можно регулировать пока только в файлах application.css, application.js, где ведется список всех компилируемых блоков.
<%= block name: 'user' do %>
<div>
<p class="_name">
<%= user.name %>
</p>
<p class="_age">
<%= user.age %>
</p>
</div>
<% end %>
<div class=”b-user”>
<p class="b-user_name">
<%= user.name %>
</p>
<p class="b-user_age">
<%= user.age %>
</p>
</div></code>
= b "test", mods: [{color: "red"}], content: [{ elem: "icon", elemMods: [{size: "small"}] }]
<div class="user">
<p class="user_name">
<%= user.name %>
</p>
<p class="user_age">
<%= user.age %>
</p>
</div>
<%= b "test", content: [
{ elem: "name", content: user.name },
{ elem: "age", content: user.age }
] %>
blocks/user/user.html.erb
<div class="user">
<%= content %>
</div>
blocks/user/elements/name.html.erb
<p class="user_name">
<%= content %>
</p>
blocks/user/elements/name.html.erb
<p class="user_age">
<%= age %>
</p>
БЭМ on Rails