-
<Node.js> TypeError: expressHandlebars is not a function액티브 스킬/노드 2021. 12. 11. 23:11728x90
⚔️
노드의 뷰 엔진으로 handlebars를 적용하다가
아래와 같은 에러가 발생하였습니다.
TypeError: expressHandlebars is not a function
const expressHandlebars = require("express-handlebars"); app.engine( "handlebars", expressHandlebars({ defaultLayout: "main", }) );
< 에러가 발생한 코드>
아래 둘 중 하나로 고치면 해결됩니다.
const expressHandlebars = require("express-handlebars"); app.engine( "handlebars", expressHandlebars.engine({ defaultLayout: "main", }) );
< 방법1: 5번째 줄 "expressHandlebars" => "expressHandlebars.engine">
const { engine } = require("express-handlebars"); app.engine( "handlebars", engine({ defaultLayout: "main", }) );
< 방법2: 1번째 줄 "expressHandlebars" => "{ engine }", 5번째 줄 "expressHandlebars" => "engine">
에러가 발생한 이유
engine 함수를 사용하지 않았습니다.
해결방안
engine 함수를 호출하거나, engine 함수를 임포트해야 합니다.
📌
https://stackoverflow.com/questions/69959820/typeerror-exphbs-is-not-a-function
728x90'액티브 스킬 > 노드' 카테고리의 다른 글
<Node.js> express.urlencoded가 필요한 이유 (0) 2022.03.02 <Node.js> __dirname 이해하고 가기 (0) 2021.12.19 <Node.js> multer middleware (0) 2021.12.02 <Node.js> Express (Routes, Controllers, URL parameter) (0) 2021.11.07 <Node.js> npm run dev 실행 속도 문제 (0) 2021.11.04