Вы только что сделали в неправильной последовательности. Вы пытались добавить содержимое страницы в частичное. В основном макете вы определяете внешний вид вашей страницы. частичные, например, являются частями этого макета (например, navbar, footer, ...)
Ваш основной может выглядеть так:
<div>
{{> header}}
{{body}}
{{> footer}}
</div>
это означает: на каждой стороне верхний и нижний колонтитулы будет загружен и между ними, внутри {{body}} будет отображено представление.
пример файла main.handlebars:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>title</title>
</head>
<body>
{{!-- navbar partial --}}
{{> _navbar}}
{{!-- flash messages --}}
{{> _flashmessages}}
{{!-- placeholder for rendered views --}}
{{{body}}}
</body>
</html>
, затем вы можете визуализировать представление на основе этого основного макета.
пример с отображением только текста
// Index Route
app.get('/', (req, res) => {
res.send("Hello world");
});
});
пример с представлением index.handlebars, отображаемым в {{body}} части страницы
// Index Route
app.get('/', (req, res) => {
res.render('index');
});