Добрый день интересует возможность сделать escapeHtml на уровне шаблонизатора bemhtml, Проблема в том что когда шаблонизатор получает в качестве контента другой блок, он принимает объект а не результат исполнения шаблона входного блока. Задача имея такой bemjson
{
block: 'prism',
language : 'markup',
content: {
block: 'content',
elem: 'title',
сontent:'Заголовок content__title размер ssбез модификаторов'
}
}
Получить за escape html Вот мой bemhtml
block('prism')(
tag()('pre'),
content()(function(){
var text = this.ctx.content + '';
return {
tag: 'code',
attr: {'data-language': this.ctx.language},
cls: 'language-' + this.ctx.language,
content: this.attrEscape(this.ctx.content)
}
}
)
)
Как правильно можно получить результат исполнения шаблона блока внутри другого блока. В документации нашел applyCtx но опять же получаю объект. Извиняюсь за стиль кода, не нашел как его оформить в вашем редакторе.
attrEscape не экранирует <, и всякое такое
тут не в этом проблема, можно написать функцию которая бы экранировала так как нужно, проблема в том как из this.ctx.content получить html(не как object, а string) который сгенерировался шаблонизатором переданного блока.
а xmlEscape тоже не помог?
@AndreyGladkov
Спасибо this.reapply(applyNext()) помог.