반응형
둘 중 취향에 맞춰서..
ejs
//app.js
//app.set('views', path.join(__dirname, 'views'));
// view 속성값으로 views 폴더를 지정
app.set('views', __dirname +'/views');
app.set('view engine', 'ejs');
console.log('뷰엔진 ejs로 세팅 ');
...
//views 폴더에 login_success.ejs 파일 만들어놓고
..
context 객체의 속성값을 login_success에 적용하고 결과를 콜백으로.
콜백함수의 html : 사용자가 보는 최종 웹 문서 코드
// 뷰 템플릿으로 렌더링 후 전송
var context = {userid: paramId, username :userName};
req.app.render('login_success', context, function(err, html){
if(err){
console.log('뷰 렌더링 중 오류 발생 : '+err.stack);
...
}
console.log('rendered : '+ html);
res.end(html);
...
변수 넣을 때는 <%= 변수 %>
ejs파일에서 다른 ejs파일의 내용가져오기
<%- include ('상대경로') ->
//head.ejs
<head>
<meta charset ='utf-8'>
</head>
//다른 ejs 파일
// 상대경로로 지정
<%- include ('./head') -%>
pug
app.set('view engine', 'pug');
렌더링 부분은 ejs와 같음.
변수 넣을때는 #{변수이름}
doctype html
html
head
title "성공"
body
block content
#container
p "조회 성공"
공통부분을 별도로 분리한후 사용할때는 상속 extends키워드를 사용한다
반응형
'IT > web' 카테고리의 다른 글
Node.js] 라우팅 개념 다시 한번 (0) | 2020.02.08 |
---|---|
Node.js] 사용자 인증 // 패스포트 모듈 (0) | 2020.02.07 |
Node.js] config 설정파일 분리하기 (0) | 2020.02.04 |
Node.js] 모듈화 (0) | 2020.02.02 |
Node.js] MySQL 연결, 사용자 추가, 로그인 (0) | 2020.02.01 |
댓글