Цитата:
Цитата:
Цитата:
В моем предствлении это будет так:
@set theme_1, theme_2, theme_3 < theme (data) {
&.title: data.title
}
|
Цитата:
<div class="b-me"> ... </div>
.b-me {
@extend .b-about;
}
Т.е. у мя тоже всё гуд :) Единственное принципиальное отличие твоего подхода от моего, что ты полностью абстрагируешься от html, заменяя сущность тега, на сущность элемента, а у меня абстракция на уровне блоков, т.е. структура блока всё равно описывается старым добрым HTML:
{setBEM b-button, tag: 'span'}
{template bButton() extends iBlock}
<button class="{this.blockName}__btn">
...
</button>
{end}
/// Пример вызова:
{bem b-button, name: '...', ...}Текст кнопки{end}
Но кстати, если у меня меняется именно тема, то я создаю не дочерний блок, а применяю модификатор: b-button_theme_dark и т.д. |
Цитата:
|
Небольшой апдейт: в скрипт трансляции добавлен сборщик файлов Jossy, т.е. если вы компилите шаблоны с помощью консольной команды snakeskin или с помощью фаел вотчера шторма, то вы можете использовать директивы вроде
//#includeдля конкатенации файлов - это может быть очень удобным при разбиении шаблонов на разные файлы. |
У меня тоже есть подобный препроцессор. Правда пока нельзя писать инструкции в виде комментариев )
А чем грант не подошел? |
Цитата:
ЗЫ: понравилась твоя либа для тестирования :) |
Цитата:
|
Цитата:
|
Цитата:
|
kobezzza, у меня возник глупый вопрос: как ты навешиваешь обработчики событий для шаблонизируемых элементов? Через делегирование?
Хочется максимально простого и понятного кода. Допустим, когда я использую ангуляр, я пишу так:
<div ng-repeat="item in array"> <!-- повторить див столько раз, сколько элементов в массие -->
<div ng-click="controller.click(item)"></div> <!-- навесить обработчик клика на каждый элемент -->
</div>
// упрощенный js
var controller = {
click: function(item) {
// item - элемент модели, по кот. кликнули
}
};
можно ли как-нибудь добиться подобного поведения? Так же хочется услышать/увидеть, как ты навешиваешь обработчики с данным шаблонизатором. |
| Часовой пояс GMT +3, время: 06:56. |