HTML templating - accidentlywoo/legacyVue GitHub Wiki
- ๋ค์ด๊ฐ๊ธฐ ์ ์ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ๋ฐ์ํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ด ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ HTML ํํ๋ ๊ทธ๋๋ก๊ณ , ๋ฐ์ดํฐ๋ง ๋ณ๊ฒฝ์ด ๋๋ ๊ฒฝ์ฐ๊ฐ ์์ ํ ๋ฐ์. ์ด๋ด ๋๋ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๋ ๊ฒ ํจ์จ์ ์ธ์ง ์์๋ด ๋๋ค.
- HTML Templating ์ด ๋ฌด์์ด๊ณ , ์ด๋ป๊ฒ ๊ตฌํํด์ผ ํ๋์ง ์ดํดํฉ๋๋ค.
- HTML Templating ์ด๋?
- String์ replace
์๋ ํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ Ajax๋ก ๋ฐ์์์ ํ๋ฉด์ ์ถ๊ฐํด์ผ ํ๋ค๊ณ ์๊ฐํด๋ด
๋๋ค.
JSON ํํ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ๊ฒ์ด๊ณ ์. ์๋ ๋ฆฌ์คํธ๋ค์ ๋ด์ฉ์ ๋ชจ๋ ๋ค ๋น์ทํฉ๋๋ค.list ํ๊ทธ๋ก html์ ๊ตฌํํด๋ณด๋ฉด ์ฌ์ง, ๊ฐ๊ฒฉ, ์ด๋ฆ, ๋ณ์ , ์ถ๊ฐ์ ๋ณด(์๊ฑฐ๋ ์๊ฑฐ๋)๋ฅผ ๋น์ทํ tag๋ฅผ ์ฌ์ฉํด์ ํํํ๋ฉด ๋ฉ๋๋ค.
์ฌ๊ธฐ์ templating ์ด๋ผ๋ ๊ฐ๋
์ ๋์
ํ๋ฉด ์ข์ต๋๋ค.
๋ฐ๋ณต์ ์ธ HTML๋ถ๋ถ์ template๋ก ๋ง๋ค์ด๋๊ณ , ์๋ฒ์์ ์จ ๋ฐ์ดํฐ(์ฃผ๋ก JSON)์ ๊ฒฐํฉํด์, ํ๋ฉด์ ์ถ๊ฐํ๋ ์์
์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค. ์๋ ๊ทธ๋ฆผ์ด ์ดํด๊ฐ ๋ ๊ฒ๋๋ค.
์ด์ HTML Template๊ณผ JSON์ ๊ฒฐํฉํ๋ฉด ๋ฉ๋๋ค. ๊ฐ๋จํ ์ด๋ ๊ฒ ๊ตฌํํ ์ ์์ต๋๋ค. `var data = { title : "hello", content : "lorem dkfief", price : 2000 }; var html = "
{content}
html.replace("{title}", data.title) .replace("{content}", data.content) .replace("{price}", data.price)` replace๋ ๋ฉ์๋ ์ฒด์ด๋ ๋ฐฉ์์ผ๋ก ํธ์ถํ๋ฉด์ ํ์ด๋ฅผ ํ ์ ์์ต๋๋ค. ์ฌ๋ฌ๋ถ๋ ์ด ์ฝ๋๋ฅผ ๊ผญ ์ค์ตํด๋ณด์ธ์!
- data๊ฐ ๋ฐฐ์ดํํ๋ก ์ฌ๋ฌ๊ฐ๊ฐ ์๋ค๋ฉด ์ด๋ป๊ฒ ์ฒ๋ฆฌํ ๊น์?
- ๊ฐ๋จํ ๋ฐ๋ณต๋ฌธ์ ์ธ ์๋ ์๊ณ , forEach์ ๊ฐ์ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์๋ ์์ ๊ฒ๋๋ค.
- ์ ์์ ์์ ๋ค๋ค๋ data๋ฅผ ์ฌ๋ฌ๊ฐ ์ ์ธํ๊ณ , HTML Templating ์์ ์ ์ค์ตํด๋ณด์ธ์.