Предоставьте пользователю Passport.js макет Express-Handlebars в Node.js Express - PullRequest
0 голосов
/ 29 марта 2019

У меня есть приложение Node.js, которое использует Express, Express-Handlebars с макетом и Passport.

После того, как пользователь успешно войдет в систему, я хотел бы, чтобы информация о нем (например, имя) отображалась в верхней части каждой страницы (что-то вроде: «Hello foodave» или подобное).

Будучи новичком в Node.js, я не смог понять, как представить объект req.user в макете, используемом Express-Handlebars. Передача его в представление через res.render, по-видимому, не делает его доступным для макета.

После того, как пользователи войдут в систему, будет работать req.user на каждом маршруте. Вот код с маршрута:

res.render('home', {user: req.user});

Вот код из вида компоновки:

<p>Hello {{user.email}}</p>

Есть ли способ выставить пользовательский объект в виде компоновки, чтобы его не нужно было передавать в качестве параметра на каждом отдельном маршруте?

...