作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试构建一个 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/
我是一名优秀的程序员,十分优秀!