DustJS: рендеринг частичного с помощью помощника
Я пытаюсь абстрагировать некоторый код и хотел бы воспользоваться помощью dust.helpers для рендеринга parial.
Моя текущая настройка:
{> "includes/components/link" /}
Моя идеальная настройка:
{@uiComponent name="link" /}
Мой помощник:
dust.helpers.uiComponent = function (chunk, context, bodies, params) {
return dust.render('includes/components/' + name, context, function (err, out) {
chunk.end(out);
});
};
Я также попробовал много других вещей, и ничего не работает.
И да, я попытался посмотреть на документацию.:(
Любые советы будут высоко ценится!
1 ответ
Решение
В Dust помощники возвращают Chunks, так что вы хотите использовать методы Chunk для возврата из вашего помощника, а не dust.render
,
В этом случае вы работаете с частями, поэтому вы хотите chunk.partial
:
dust.helpers.uiComponent = function (chunk, context, bodies, params) {
var name = context.resolve(params.name);
return chunk.partial('includes/components/' + name, context, params);
};