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);
};
Другие вопросы по тегам