tech.junha.kr

EJS: Node js 뷰엔진 (html랜더링)

템플릿 엔진(좌), EJS(우)

템플릿 엔진(좌), EJS(우)

템플릿 엔진(좌), EJS(우)

템플릿 엔진(좌), EJS(우)

1. 쓰는 이유

node.js에서 html을 랜더링하면 오류가난다. ESJ엔진을 통해 랜더링 해준다.

2. EJS(Embedded Javascript)

템플릿 엔진 중 하나이다. 템플릿에 보여주고 싶은 데이터가 있을 때 템플릿 엔진이 이 둘을 합쳐 결과 페이지를 생성해낸다. 즉, 요청에 따라 전체적인 템플릿은 동일하지만 세부적인 값들을 동적으로 바꿀 수 있다. JSP 방식과 비슷하다고 한다. EJS는 Node에서 가장 인기있는 템플릿 엔진이다.

3. 코드

npm install ejs
app.set('views', __dirname + '/views');
// 경로설정, views변수는 정해져 있는 듯

app.set('view engine', 'ejs');
// 서버가 HTML 렌더링에 EJS엔진을 사용하도록 설정.

app.engine('html', require('ejs').renderFile);
// 템플릿 엔진을 ".html"파일에 매핑

app.use("/static", express.static("static"));
// 기본 path를 /public으로 설정(css, javascript 등의 파일 사용을 위해)