Я пытаюсь заставить Mustache правильно работать с Express, и, как можно догадаться, у меня возникают проблемы.
Следующая строка инициализирует Mustache красиво и чисто. Переменные отображаются так, как ожидалось.
app.register('html', require(__dirname+'/public/js/libs/mustache.js'));
Тем не менее, проблемы начинают возникать, когда в микс добавляются партиалы. С помощью Mustache этот партиал должен вызывать представление заголовка/партиал.
{{> header}}
Но, увы, ничего не происходит. :/ Даже когда я предлагаю частичную часть напрямую, Усик не может ее воспроизвести.
app.get('/', function(req, res) {
res.render('welcome', {
partials: {
header: 'Header
'
}
});
});
Похоже, партиалы вообще не работают. Я нашел один хак, который заставляет партиалы несколько работать:
http://bitdrift.com/post/2376383378/using-mustache-templates-in-express
После этого партиалы рендерятся, когда предлагаются непосредственно при вызове рендеринга (см. выше ), но он по-прежнему терпит неудачу при рендеринге партиалов непосредственно в представлениях/макетах :
. ] Макет выглядит примерно так:
Behold, the header
{{> header}}
Let's move to more important stuff...
Представление заголовка выглядит примерно так:
Header
Express может загружать представления сами по себе, все в порядке,но он не знает, как обращаться с частями Усов...