pug 사용
1) npm에서 pug를 설치한다.
2) express에서 view engine을 pug로 설정 해준다.
3) index.pug라는 이름의 Pug 템플리트를 views 디렉토리에 작성한다.
4) views할것을 자기가 원하는 폴더 경로로 지정 해 주어야 한다.
${process.cwd()}/src/views
);${process.cwd()}/views
이다.5) 만든 index.pug를 사용할려면 res.render("index.pug")로 사용이 가능하다.
pug 문법
1) 반복되는 tag사용
html(lang="en")
head
meta(charset="UTF-8")
meta(http-equiv="X-UA-Compatible", content="IE=edge")
meta(name="viewport", content="width=device-width, initial-scale=1.0")
title Wetube
body
h1 Watch Video!
include partials/footer.pug
2) 반복되는 layout/block사용
doctype html
html(lang="ko")
head
meta(charset="UTF-8")
meta(http-equiv="X-UA-Compatible", content="IE=edge")
meta(name="viewport", content="width=device-width, initial-scale=1.0")
block head
body
block content
include partials/footer.pug
extends base.pug
block head
title Home | Wetube
block content
h1 Home
3) res.render로 pug에 변수 주기
pug에서 if사용
body
header
if fakeUser.loggedIn
small Hello #{fakeUser.username}
nav
ul
if fakeUser.loggedIn
li
a(href="/users/logout") Logout
else
li
a(href="/login") Login
h1=pageTitle
main
block content
include partials/footer.pug
pug에서 반복문 사용
each video in videos
li=video
else
li no video
pug에서 mixins사용
1) mixins할 내용 pug에 저장
mixin video(info)
div
h4=info.title
ul
li #{info.rating}/5
li #{info.comments}
li Posted #{info.createdAt}
li #{info.views} views
2) mixin을 쓸 pug파일에서 mixin불러오기
3) 불러온 mixins사용하기
each potato in videos
+video(potato)