如何将值从 req.render() 传递到 ejs,然后从那个 ejs 传递到另一个

How to pass value from req.render() to ejs , then from that ejs to another


server.js

app
  .route("/")
  .get((req, res) => {
    res.render("home", { tofirstejs: usercount });
  })

home.ejs

<%- include('partials/header.ejs', {tolastejs:tofirstejs}); -%>
<%- include('partials/signin.ejs'); -%>
<%- include('partials/footer.ejs'); -%>

header.ejs

<body>
  <div id="alert"></div>
  <h3>  <%= tolastejs%> user</h3>  //want inital value of usercount here
</body>

我想知道如何通过多个ejs传值。我可以通过减少中间的ejs并直接调用最后一个来解决这个问题,但我的目的是学习。因此,如果有任何方法可以实现这一点。请让我知道。

你其实不需要再写一遍,我会添加一个额外的错误处理步骤

app.get('/', (req, res , next) => {

res.render('home',{tofirstejs: usercount},  (error, html) =>{
if(error){ 
 console.log(error) 
 next(error)
 return
 }

  res.send(html)   
 })
})

在视图文件中

<%- include('partials/header.ejs') %>
<%- include('partials/signin.ejs'); %>
<%- include('partials/footer.ejs'); %>

tofirstejs 可用于所有 3 个部分