express templates
동적인 jsp를 정적 파일에 담기 위해 제공되는 템플릿.
set을 통해 설정이 가능함. view engine을 jade로 설정하며, views를 views라는 디렉토리로 설정해준다.
또한 render를 통해 렌더링을 한 뒤에 파일을 불러올 수 있다.
app.set("view engine", "jade");
app.set("views", "./views");
app.get("/templates", function (req, res) {
res.render("temp");
});
jade
동적, 정적 파일의 단점을 보완한 템플릿 형식
html 코드를 쉽게 작성할 수 있다.
렌더링 파일의 html 코드를 정리하기 위해서는 자바 스크립트에 app.locals.pretty = true 를 작성하면 된다.
html
head
body
h1 hello jade
ul
-for(var i=0; i<5; i++)
li coding
들여쓰기를 통해 태그를 안으로 넣을 수 있음.
또한, html이 아닌 js 코드를 작성하기 위해서는 -를 붙여야한다.
변수 선언을 위해서는 js에 작성해야한다.
jade에 time 변수를 추가하기 위해서는 아래와 같이 = 으로 작성하며,
div= time
js에는 객체를 생성하기 위해 render에 두번째 변수 {} 안에 추가해야한다.
app.get("/templates", function (req, res) {
res.render("temp", { time: "hello", _title: "express practice" });
});