node.js - 如何使用 Handlebars 更改 Express 中的默认布局?

标签 node.js express handlebars.js

我正在使用 Express 4.9.0 和 express-generator。

使用以下命令创建样板:

express --hbs projectname

内置 Handlebars 默认使用 views/layout.hbs 作为母版页。但我在 app.js 中看不到任何设置来改变这种行为。

我的 app.js 中的一段代码:

//查看引擎设置 app.set('views', path.join(__dirname, 'views')); app.set(' View 引擎', 'hbs');

  1. 如何全局更改我的默认布局?
  2. 如果我想要 2 或 3 个不同的全局布局怎么办?

最佳答案

您可以指定要在渲染调用中使用的布局。如果您创建一个名为 other.hbs 的新布局,则可以执行以下操作:

res.render('view', { title: 'my other page', layout: 'other' });

要覆盖整个应用程序,您可以使用:

app.set('view options', { layout: 'other' });

关于node.js - 如何使用 Handlebars 更改 Express 中的默认布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26871522/

相关文章:

javascript - Ember 2,显示空模型的消息而不是在 hbs 模板中加载,每个或如果

node.js - 使用 Node JS 验证 jwt token 和代理到另一台服务器

javascript - 防止 JavaScript/Node.js 中的 SQL 注入(inject)

node.js - 如何在express-validator的checkSchema下的isLength类型验证中为min、max提供不同的错误消息

node.js - require ('express' )() 在 NodeJS 中做什么

mysql - 有人用Node.JS更新MySQL吗

angular - 获取 http://localhost:8000/api net::ERR_CONNECTION_REFUSED

node.js - 是否可以在不使用 NVM 的情况下安装多个版本的 NPM?

javascript - 有没有办法获取选项标签值并将其传递给 Handlebars 中的助手?

javascript - Handlebars exphbs 不是函数