You Can Become A
๋ฆ๊ฒ ์์ํด๋ ๋๊ตฌ๋ ์ง ๋ ธ๋ ฅํ๋ฉด ๊ฐ๋ฐ์๊ฐ ๋ ์ ์์ด์ !
Nunjucks
[Nunjucks] ๐ ๋์ ์ค Macro ์ฌ์ฉ๋ฒ - ํ ํ๋ฆฟ ํจ์
๋์ ์ค macro PUG์ mixin๊ณผ javaScript์ function(){}๊ณผ ๋น์ทํ ๊ฐ๋ ์ผ๋ก ํ ํ๋ฆฟ์ ๋ชจ๋ํ ํ์ฌ ๊ด๋ฆฌํ๊ธฐ ์ฝ๊ฒ ๋ง๋๋ ๊ธฐ๋ฅ์ ๋๋ค. {% macro ๋งคํฌ๋ก๋ช %} {% endmacro %} forms.html {% macro field(name, value='', type='text') %} {% endmacro %} {% macro label(text) %} {{ text }} {% endmacro %} {% from "forms.html" import field, label%} {{ label('Username') }} {{ field('user') }} {{ label('Password') }} {{ field('pass', type='password') }} link.ht..
[Nunjucks] ๐ ๋์ ์ค super (ํ ํ๋ฆฟ ์์)
๋์ ์ค super() - ํ ํ๋ฆฟ ์์ ํ ํ๋ฆฟ์์ {% block %}๊ณผ {% endblock %} ์ฌ์ด์ ๋ด์ฉ์ด ์์ ๊ฒฝ์ฐ, {% extends %}๊ฐ ์คํ๋๋ฉด ๊ธฐ์กด ๋ด์ฉ์ ์ฌ๋ผ์ง๋๋ค. ๋ง์ฝ ๊ธฐ์กด ๋ด์ฉ์ ์ ์งํ๊ณ , ์ด์ด์ ๋ด์ฉ์ ์ฝ์ ํ๊ณ ์ถ์ ๋๋, ํ ํ๋ฆฟ์ ๋ถ๋ฌ์ค๋ ์ชฝ์ super()๋ฅผ ์ฝ์ ํ๋ฉด ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ ํ์ผ์, ์ฌ๋ฌ๊ฐ์ {% block %}์ ์ง์ ํด ์ค ์ ์์ต๋๋ค. ๋ค๋ง ๋ธ๋ก ์ด๋ฆ์ ์ฃผ์ํ๋ฉด ๋ฉ๋๋ค. layout.njk {% block slide-script %} {% endblock %} {% block slide %} This is a test! {% endblock %} slide.njk {% extends โ./layout.njkโ %} {% block slide-script %}..
[Nunjucks] ๐ ๋์ ์ค ๊ธฐ๋ณธ ๋ฌธ๋ฒ ๐ฏ ์ด์ ๋ฆฌ
Nunjucks ๋์ ์ค๋ ํ ํ๋ฆฟ ์์ง ์ค ํ๋๋ก ๋ชจ์ง๋ผ ์ฌ๋จ์์ ๋ง๋ ํ ํ๋ฆฟ ์ ๋๋ค. Express์์ ๋ฐ๋ก ์ค์น๊ณผ์ ์์ด ๋ฐ๋ก ์ธ์์๋ PUG์ ๋ฌ๋ฆฌ ๋์ ์ค๋ ๋ฐ๋ก ์ค์น๊ฐ ํ์ํฉ๋๋ค. Node.js์ ๋ํ์ ์ ํ ํ๋ฆฟ ์์ง ์ผ๋ก๋ pub์ nunjucks๊ฐ ์์ต๋๋ค. ๋ค๋ง ๊ฐ์ธ์ ์ธ ์๊ฐ์ผ๋ก๋ pug๋ณด๋ค๋ nunjucks๊ฐ ํ์ฉ๋๊ฐ ๋ฐ์ด๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ฑ๋ฅ๋ฉด์์๋ pug๊ฐ ๋ ๋๋ง ์๋๊ฐ nunjucks๋ณด๋ค ๋น ๋ฅด์ง๋ง, pug๋ ๋ฐ๋ก htmlํ๊ทธ๋ฅผ pug์ฉ ๋ฌธ๋ฒ์ผ๋ก ๋ณํํด์ผ ๋์ง๋ง ๋์ ์ค๋ html ๋ฌธ๋ฒ์ ๊ทธ๋๋ก ์ฐจ์ฉ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ํธํ์ฑ์ด ๋งค์ฐ ์ข๊ธฐ ๋๋ฌธ์ ๋๋ค. ์๋ฅผ ๋ค์ด ๋์ ์ค๋ ๋จ์ด ๋ง๋ค์ด๋์ ์๋งจํฑ ํ๊ทธ ๊ตฌ์กฐ๋ฅผ ๊ทธ๋๋ก ๋ณต๋ถํ์ฌ ์ฌ์ฉํ๋ฉด ๋์ง๋ง, pug๋ ๋ฐ๋ก ๋ณํ์์ ์ ํด์ค์ผ ํ์ฃ . ์ด์ฐจํผ ํ๋ก ํธ๋..