Есть ли способ автоматически загружать части усов в экспресс + консолидацию

Я использую экспресс + консолидацию + усы в качестве механизма шаблонов, и мне было интересно, есть ли способ научить экспресс автоматически загружать частичные файлы с соответствующими именами файлов, которые я явно не определил.

Пример:

head.html:
---
<!DOCTYPE html>
<html><head><title></title></head><body>


index.html:
---
{{> head}}
{{content}}
{{> foot}}


foot.html:
---
</body></html>


app.js:
---
app.get('/', function(req, res) {
    res.render('index.html', {
        partials: {
            head: 'head', 
            foot: 'foot'
        }
    });
});

Как видите, партиалы head и foot названы точно так же, как их соответствующие имена файлов (минус .html). Выполнение этого таким образом работает нормально, но я ищу простой способ разрешить частичную загрузку экспресса/усов автоматически, если есть соответствующее имя файла; без необходимости снова указывать мои частичные значения по умолчанию в каждой функции. {{> example}} -> проверяет, существует ли views/example.html, и загружает его, если example не определено в объекте partials).

Это возможно?

Или есть хотя бы простой способ определить частичные значения по умолчанию глобально?


person Manuel Bieh    schedule 03.01.2013    source источник
comment
Если мой ответ решит вашу проблему, не могли бы вы принять его?   -  person Louis Chatriot    schedule 14.01.2013


Ответы (1)


Это пока невозможно с консолидацией. У нас была точно такая же проблема (возможность вызывать частичные файлы по их именам без необходимости указывать hogan/consolidate для загрузки их каждый раз), и мы не могли найти хороший модуль, поэтому мы сделали свой собственный, который мы использовали в производстве для несколько недель: h4e ("Hogan for Express"). При этом все партиалы загружаются автоматически, и вы также можете использовать макеты, если хотите.

Я думаю, что это должно ответить на ваши потребности. Луи

person Louis Chatriot    schedule 04.01.2013