当前位置: 首页 > 面试题库 >

如何使用把手更改Express中的默认布局?

廉子民
2023-03-14
问题内容

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

使用以下命令创建样板:

express --hbs projectname

内置把手views/layout.hbs默认情况下用作母版页。但是我看不到我的app.js中的任何设置来更改该行为。

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

// view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'hbs');

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

问题答案:

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

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

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

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


 类似资料:
  • 问题内容: 这是我当前的SQL的样子: 这是我的数据库_users表的样子: 我收到此错误: 您的SQL语法有误;检查与您的MariaDB服务器版本相对应的手册,以在’rid_in附近使用正确的语法;-修改列的默认值 链接到此行: 如果我更改此设置,则忽略该值: 它工作正常,如何将输入绑定到查询? 我的预期输出是能够用来更改默认用户角色值并将具有旧用户值的所有行更新为新行: 为了能够更新每个用户的

  • 问题内容: 尝试更改列的数据类型并设置新的默认值时遇到以下错误: 错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以在第1行的’VARCHAR(255)NOT NULL SET DEFAULT’{}’‘附近使用正确的语法 问题答案: 同样的第二种可能性(感谢juergen_d):

  • 在尝试更改列的数据类型并设置新的默认值时,我遇到以下错误: 错误1064(42000):您的SQL语法中有错误;查看与您的MySQL server版本相对应的手册,以了解第1行“varchar(255)NOT NULL SET DEFAULT”{}“附近使用的正确语法

  • 我正在使用Yii 2高级应用程序模板,AdminLTE资产包和Gii代码生成器。 以下是我的例子: 我需要更改模板,以便删除“CreateLabTiposMovimentos”按钮(并修改更多内容)。 在Gii创建CRUD后,我删除了每个按钮,但我想更改模板,以便Gii可以自动执行。

  • 问题内容: 如何更改默认的Virtualenvwrapper提示符?默认情况下,使用“ workon <name_of_env>”之类的命令在特定的虚拟环境上工作,会将virtualenv的名称添加到提示中。如果您未使用默认命令提示符,则此方法可能效果不佳。 问题答案: 默认情况下,当使用命令“ workon ”切换到virtualenv时,virtualenvwrapper将在字符串(( ))前

  • 问题内容: 背景 我目前正在建立一个使用NodeJS作为服务器的网站,Express Handlebars (只是服务器端的Handlebars),并希望将AngularJS用于一些客户端。 问题 AngularJS和Handlebars使用相同的语法进行模板处理, 这会导致一个问题,其中ExpressHandlebars首先会解释AngularJS代码,然后会抛出错误,因为它尝试提取的数据仅存在