gpt4 book ai didi

javascript - 如何在 ExpressJS 中处理全局数据

转载 作者:行者123 更新时间:2023-12-04 09:27:39 26 4
gpt4 key购买 nike

我正在尝试构建一个 express.js 应用程序,我想将一些数据传递给我的主布局。例如,我在每个页面上使用的导航链接列表。我知道如何将数据传递给单个 View ——例如:

app.get('/', (req, res) => {
res.render('index', { pageTitle: 'Home' });
}
但是如果我想将数据传递给我的主布局(而不是单个 View )怎么办。例如,假设我将一个链接列表放入显示在每个页面上的标题导航栏中。
我如何将这些数据传递到我的主布局中?
谢谢。

最佳答案

一个更好的解决方案,而不是使用 app.locals将设置一个在每个路由之前运行的中间件。

app.use((req,res,next) => {
res.locals.navLinks = [
// array data
];
next()
});
将在任何 HTTP 请求之前运行,并将在每个路由之前设置 navLinks。
这将导致 navLinks仅在请求生命周期内有效,不会污染 app.locals . (这将在应用程序的整个生命周期中持续存在)。

关于javascript - 如何在 ExpressJS 中处理全局数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62951043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com