首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在nest.js中使用Handlebars.js设置默认布局?

如何在nest.js中使用Handlebars.js设置默认布局?
EN

Stack Overflow用户
提问于 2018-08-14 16:03:08
回答 2查看 9.9K关注 0票数 7

我刚刚从nest.js开始,有一些以前在节点和表达式方面的经验。

我正在尝试为我的部分和响应呈现设置一个默认布局。这是我的main.ts

代码语言:javascript
运行
复制
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import * as hbs from 'hbs';

async function bootstrap() {
    const app = await NestFactory.create(AppModule);

    app.setBaseViewsDir(__dirname + '/views');
    hbs.registerPartials(__dirname + '/views/partials');
    app.setViewEngine('hbs');

    await app.listen(3000);
}
bootstrap();

我觉得应该在代码中的某个地方定义一个默认布局,但我不知道如何继续。我的Google-fu让我失望了,所以有人能帮我一把吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-16 15:13:29

您可以使用

代码语言:javascript
运行
复制
app.set('view options', { layout: 'index' });

您仍然需要在所有控制器上使用@Render('valid-layout'),所提供的布局名称必须有效。它将被您的默认布局覆盖。

票数 8
EN

Stack Overflow用户

发布于 2021-07-08 09:59:48

这在NestExpressApplication上起作用了:

进口车把:

代码语言:javascript
运行
复制
import * as hbs from 'hbs';
import { join } from 'path';

将hbs设置为viewEngine a

代码语言:javascript
运行
复制
app.setBaseViewsDir(join(__dirname, '..', 'views'));
app.setViewEngine('hbs');
hbs.registerPartials(join(__dirname, '..', '/views/partials'));

还与帮手一起工作:

代码语言:javascript
运行
复制
hbs.handlebars.helpers = {
...require('handlebars-helpers')()
};
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51845556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档