ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Node.js] Pug partials
    WEB/NodeJS 2022. 9. 17. 19:44

    Pug큰 부분을 나누어 partial로 관리하는 방법에 대해 알아보자

     

    test.pug

    - 다음 코드는 pug를 partial로 관리하지 않았을 때 코드

    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")
            link(rel="stylesheet" href="https://unpkg.com/mvp.css")
            title Test
        body 
            header 
                h1 Test
            main 
                center Pug연습
        footer © #{new Date().getFullYear()} manybean

     

    include

    test.pug

    - include를 사용해 폴더명/파일명

    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")
            link(rel="stylesheet" href="https://unpkg.com/mvp.css")
            title Test
        body 
            header 
                h1 Test
            main 
                center Pug연습
        include partials/footer.pug

    footer.pug

    footer © #{new Date().getFullYear()} manybean

    동일한 결과가 나오는 것을 알 수 있음

     

     

    extends

    test.pug

    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")
            link(rel="stylesheet" href="https://unpkg.com/mvp.css")
            title Test
        body 
            header 
                h1 Test
            main 
                center Pug연습
        include partials/footer.pug

    test2.pug

    extends test.pug

    test.pug와 동일한 결과

     

     

    block

    test.pug

    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")
            link(rel="stylesheet" href="https://unpkg.com/mvp.css")
            title Test
        body 
            header 
                block content
            main 
                center Pug연습
        include partials/footer.pug

    test2.pug

    extends test.pug
    
    block content 
        h1 Test2

    test3.pug

    extends test.pug
    
    block content 
        h1 Test3

     

     

    자바스크립트 변수 사용

    test.pug

    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")
            link(rel="stylesheet" href="https://unpkg.com/mvp.css")
            title #{Title}
        body 
            header 
                block content
            main 
                center Pug연습
        include partials/footer.pug

    controller

    export const test2 = (req, res) => res.render("test2", {Title: "test2"})
    export const test3 = (req, res) => res.render("test3", {Title: "test3"})

    test2

    test3

    728x90

    'WEB > NodeJS' 카테고리의 다른 글

    [Node.js] Node.js - MySql 연동  (0) 2022.09.19
    [Node.js] Express 서버 구축  (0) 2022.09.18
    [Node.js] Node.js CRUD(DB 연결X)  (0) 2022.09.18
    [Node.js] node.js에서 pug 연결  (0) 2022.09.15
    [Node.js] Node.js 환경설정(VSC)  (0) 2022.09.11
Designed by Tistory.