var express = require('express');
var hbs= require('express-handlebars')
var app = express();app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
app.engine('hbs', hbs({
layoutsDir: `${__dirname}/views/layouts`,
extname: `hbs`,
defaultLayout: 'layout',
partialsDir: `${__dirname}/views/partials`
}))使用express-handlebars版本(5.3.4)时没有问题,但它不能与新版本(6.0.1)一起工作,它显示hbs不是一个函数TypeError: hbs is not a function
发布于 2021-11-20 12:34:10
根据documentation的说法,有一个新的create函数,您可以在其中传递您的JSON配置,然后使用app.engine函数定义hbs.engine。
示例:
const express = require("express");
const { create } = require("express-handlebars");
const app = express();
const hbs = create({
layoutsDir: `${__dirname}/views/layouts`,
extname: `hbs`,
defaultLayout: 'layout',
partialsDir: `${__dirname}/views/partials`
});
app.engine('hbs', hbs.engine);
// Continue codehttps://stackoverflow.com/questions/70045564
复制相似问题