Динамические шаблоны в EJS (node.js)

Кто-нибудь знает хорошее решение для включения шаблонов, имена которых будут известны только во время выполнения? EJS»s includes позволяет только указать точное имя файла / шаблона.

Случай использования: У меня есть макет статьи, и в каком-то локальном файле есть содержимое статьи HTML / EJS.

Для этого мне нужно что-то вродеhttps://github.com/visionmedia/ejs#includes но имя файла должно быть взято из локальной переменной:

Предположим, у меня есть такой обработчик (упрощенный):

app.get('/article/:article', function (req, res) {
        var articleContent = req.params.article;
        res.locals.articleContent = 'data/'+articleContent;
        return res.render('article.ejs')
    })

А в article.ejs (предположим, есть ejs-locals):



  
      
  

Есть ли возможность сделать это, или единственный вариант - загрузить содержимое статьи и поместить в articleContent, доступный для этого?

Проблема с этим решением состоит в том, что содержание статьи должно быть простым html (`<% - -%> ' не интерполируйте значение). Так что если внутри статьи мне нужно использовать какую-либо функцию EJS, мне нужно скомпилировать / визуализировать самостоятельно.

Может быть, кто-то уже знает, как это можно сделать с помощью какого-нибудь динамического включающего помощника для EJS, поэтому нет необходимости в дополнительном коде?

Ответы на вопрос(2)

Ваш ответ на вопрос