Handlebars template's filename extension
您好,
我的模板文件获得了扩展名.handlebars
,我想将其更改为.hbs
const express = require('express');
const exphbs = require('express-handlebars');
const app = express();
app.engine('handlebars', exphbs({defaultLayout: 'index'}));
app.set('view engine', 'handlebars');
将handlebars
更改为hbs
并重命名文件时,会出现错误。找不到这些文件。
缺少什么?
答案 0 :(得分:1)
尝试设置以下属性
const exphbs = require('express-handlebars');
const handlebars = exphbs.create({
// layoutsDir: path.join(__dirname, 'app/views/layouts'),
// partialsDir: path.join(__dirname, 'app/views/partials'),
defaultLayout: 'index',
extname: 'hbs'
});
app.engine('hbs', handlebars.engine);
app.set('view engine', '.hbs');
答案 1 :(得分:1)
更改您的代码:
`
const express = require('express');
var app = express();
const hbs = require('express-handlebars');
app.set('views', path.join(__dirname, 'views'));
app.engine('hbs', hbs({extname : 'hbs', defaultLayout: 'index', layoutsDir: __dirname+'/views/layouts'}));
app.set('view engine', 'hbs');
更改文件的扩展名
.hanlebars
至
.hbs
并将index.hbs
文件放在path/to/project/views/layouts
内,.hbs
文件的其余部分应保留在path/to/project/views/
。