Всем привет!
Недавно начал изучать бэм и возник вопрос, как мне в bemhtml не выводить какой то елемент?
Есть массив с данными и в одном из них указан путь до картинки (icon), а в доругом нет
пример:
// bemjson
{
block: 'block-list',
items: [{
title: 'Дома',
value: '23',
},
{
title: 'На улице',
value: '20',
icon: '/path/to/icon.svg'
}]
}
// bemhtml
block('block-list')(content()(function(){
return
this.ctx.items.map(item =>{
return {
elem : 'item',
content: [{
elem: 'title',
content: item.title
},{
elem: 'value',
content: item.value
},{
elem: 'icon',
tag: img,
attrs: {src: item.icon}
}]
}
});
}));
В первом элементе будет пустой img
Я конечно могу в начале map проверять если есть item.icon, то верни с иконкой, в противном случае без, но тогда будет дублироваться elem: 'item' и тд