如何将Expressjs中的动态变量传递给所有Pug模板?

如何将Expressjs中的动态变量传递给所有Pug模板?,express,pug,Express,Pug,如何将app.js中的动态变量传递给我的所有Pug模板文件?Javascript对象app.locals,res.locals可以解决您的问题 app.locals对象是一个JavaScript对象,其属性是应用程序中的局部变量 app.locals.title = 'My App'; res.locals仅在请求生存期内有效的属性。当你处理有res对象的路由时,你不会有app对象,app.locals也不会有app对象 app.use(function (req, res, next) {

如何将app.js中的动态变量传递给我的所有Pug模板文件?

Javascript对象
app.locals
res.locals
可以解决您的问题

app.locals
对象是一个JavaScript对象,其属性是应用程序中的局部变量

app.locals.title = 'My App';
res.locals
仅在请求生存期内有效的属性。当你处理有res对象的路由时,你不会有app对象,app.locals也不会有app对象

app.use(function (req, res, next) {
   res.locals.user = req.user || null;
   next();
});
您可以访问呈现的模板中的局部变量,这对于为模板提供帮助函数以及应用程序级数据非常有用。通过
req.app.Locals
在中间件中提供局部变量(请参阅)

您可以通过以下方式访问pug中的对象: html 身体 h1你好,世界

    if user != null
        p Hi there, #{user}!
    else
        p Hi there, unknown person!

Javascript对象
app.locals
res.locals
可以解决您的问题

app.locals
对象是一个JavaScript对象,其属性是应用程序中的局部变量

app.locals.title = 'My App';
res.locals
仅在请求生存期内有效的属性。当你处理有res对象的路由时,你不会有app对象,app.locals也不会有app对象

app.use(function (req, res, next) {
   res.locals.user = req.user || null;
   next();
});
您可以访问呈现的模板中的局部变量,这对于为模板提供帮助函数以及应用程序级数据非常有用。通过
req.app.Locals
在中间件中提供局部变量(请参阅)

您可以通过以下方式访问pug中的对象: html 身体 h1你好,世界

    if user != null
        p Hi there, #{user}!
    else
        p Hi there, unknown person!
请检查请检查