더북(TheBook)

6.5.1 Pug(Jade)

 

예전 이름인 Jade로 더 유명한 Pug는 꾸준한 인기를 얻고 있습니다. 문법이 간단하여 코드의 양이 줄어들기 때문입니다. Ruby를 사용해 보았다면 문법이 비슷해 금방 적응할 겁니다. 물론 Ruby를 모르는 사람도 문법이 쉬워서 빠르게 배울 수 있습니다. 단, HTML과는 문법이 많이 달라 호불호가 갈립니다.

▲ 그림 6-10 Pug 로고

 

먼저 app.js에 다음 부분이 들어 있어야 합니다.

app.js

...
app.set('views', path.join(__dirname,'views'));
app.set('view engine','pug');
...

 

views는 템플릿 파일들이 위치한 폴더를 지정하는 것입니다. res.render 메서드가 이 폴더 기준으로 템플릿 엔진을 찾아서 렌더링합니다. res.render('index')라면 views/index.pug를 렌더링합니다. res.render('admin/main')라면 views/admin/main.pug를 렌더링합니다.

view engine은 어떠한 종류의 템플릿 엔진을 사용할지를 나타냅니다. 현재 pug로 설정되어 있으므로 그대로 사용하면 됩니다.

이제부터 Pug의 문법을 알아보면서 HTML과는 어떻게 다른지 살펴봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.