Подтвердить что ты не робот

Express 4 ручных рендера без макета

Есть ли способ в экспресс-приложении для визуализации представления без использования макета?

У меня есть layout.hbs внутри проекта. Файл, кажется, используется без необходимости регистрировать его в любом месте и для большинства просмотров, что хорошо, но что, если только один вид нужно визуализировать без?

4b9b3361

Ответ 1

Предполагая, что вы используете express-handlebars, вы можете указать другой макет из своего маршрута/контроллера, когда вы вызываете метод рендеринга. Чтобы полностью избавиться от компоновки, вы можете установить макет на false.

router.get('/', function(req, res) {
    res.render('home', {layout: false});
});

https://github.com/ericf/express-handlebars#layouts

Ответ 2

Должно быть ясно, когда у вас есть данные для рендеринга, что layout должен быть просто дополнительным свойством таких данных

var data = {
    layout: false, 
    var1: var1,
    var2: var2
};

res.render('home', data);