#node.js #express #handlebars.js #express-handlebars
#node.js #выразить #handlebars.js #экспресс-рули
Вопрос:
Я пытался протестировать экспресс и экспресс-рули. Я прочитал и попробовал несколько демонстраций. Все они в основном одинаковы, но я не могу заставить ни одного из них работать. Ошибка, которую я продолжаю получать, это —
app.engine(‘handlebars’, exhbs()); ^
Ошибка типа: exhbs не является функцией
вот мой код ниже:
const express = require("express");
const exphbs = require("express-handlebars");
const app = express();
const port = 8000;
//Handelbars Middleware
app.engine("handlebars", exphbs());
app.set("view engine", "handlebars");
// Index Route
app.get("/", function (req, res) {
res.render("home");
});
app.listen(port, () => {
console.log(`Server started on port ${port}`);
});
Я сделал короткое видео для дальнейшего объяснения — https://www.awesomescreenshot.com/video/6352907?key=df18cdbdf4ed12b85d2c92458ad9a2de
Я думал, что const exphbs = require(‘express-handlebars’); был объявлен функцией
Спасибо
Ответ №1:
Я думаю, вам следует использовать example в качестве ссылки из express-handlebars. Чтобы использовать этот код, вам нужно добавить в свой pacakge.json
файл эту строку "type": "module",
(импорт ES6) Удачи!
import express from 'express';
import { engine } from 'express-handlebars';
const app = express();
app.engine('handlebars', engine());
app.set('view engine', 'handlebars');
app.set('views', './views');
app.get('/', (req, res) => {
res.render('home');
});
app.listen(8000);
Ответ №2:
exhbs не является функцией, и вы можете попробовать этот код..
const express = require('express');
const exphbs = require('express-handlebars');
// const { engine } = require('express-handlebars');
const app = express();
const port = 8000;
//Handelbars Middleware
//app.engine('handlebars', engine());
app.engine('handlebars', exphbs.engine());
app.set('view engine', 'handlebars');
// Index Route
app.get('/', function (req, res) {
res.render('home');
});
app.listen(port, () =>{
console.log(`Server started on port ${port}`);
});
Комментарии:
1. работал как шарм, но несколько месяцев назад я смог запустить этот код? Я вроде как новичок в этом, но это const exphbs = require(‘express-handlebars’); и функция. Спасибо