从 ExpressJS 在 Pug 模板中传递包含参数?

Pass an include parameter in Pug template from ExpressJS?

我是 Pug 和 ExpressJS 的新手,不知道如何做一件简单的事情:将模板路径从 Express 传递到 Pug。

这是我想到的一个示例,变量名为 pageContent :

./app.js

app.get('/', function (req, res) {
  res.render('index', {title: 'Some Title', pageContent: 'includes/somePage.html'})
})

./views/index.哈巴狗

html
  head 
    include includes/head.html
    title= title
  body
    include includes/header.html
    include #{pageContent}
    include includes/footer.html

知道我错过了什么吗?预先感谢您的帮助!

请确保您使用的是:

app.set('view engine', 'pug')

另外,dynamic import还不允许,所以你的包含不能是变量

由于 pageContent 是通过渲染函数传入的,因此应该是:

html
  head 
    include includes/head.html
    title= title
  body
    include includes/header.html
    #{pageContent}
    include includes/footer.html