Войти с помощью github
Форум /

Странное поведение bemhtml. Шаблон:

block('comment-editor').elem('clear').replace()(
    { block : 'input', elem : 'clear', mix : { block : 'comment-editor', elem : 'clear' } }
);

bemhtml output:

<span class="input__clear"></span>

bh.js:

module.exports = function (bh) {
    bh.match('comment-editor__clear', function(ctx){
        return { block : 'input', elem : 'clear', mix : { block : 'comment-editor', elem : 'clear' } };
    });
}

bh.js output:

<span class="input__clear comment-editor__clear"></span>

Как видно, примиксованый блок не появляется. При этом замечена закономерность: Если в миксе или в возвращаемом блоке заменить { elem : 'clear' } на любой другой - микс начинает появляться в коде. Ошибка воспроизводится только когда в блоке и миксе есть одинаковые элементы.