yan_z 2020. 7. 3. 17:29

EJS = Embedded JavaScript Template

nodejs 진영에서 많이 사용하는 템플릿엔진이다. 문법이 단순하다.

ejs 는 html 안에서 <% %>를 이용해서 서버의 데이터를 사용하거나 코드를 실행할 수 있다.

 

기본 문법

  • 주석 : <%# ... %>
  • JS 코드 : <% ... %>
  • 변수 출력(html escape 처리: >를 $gt로 변환) : <%= ... %>
  • 태그내부 공백 제거 : <%_ ... _%>
  • html escape안하고 변수 출력 : <%- ... %>

 

nodejs와 연동(= 데이터 넘겨주기)

 

3-1. express 없이 연동하기

const ejs = require("ejs"); 
ejs.render(경로, 데이터, 옵션);

 

3-2. express 에서 연동하기

  • app.js 에서 
app.set('view engine', 'ejs');
  • 처리하는 라우터에서 아래와 같은 로직이 있으면 된다.
const data = { title: 'ejs init', message: 'Hello World' };
res.render('index.ejs', data);