๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๊ฐœ๋ฐœ/Vue.js10

Vue.js xlsx ์—‘์…€ ๋‹ค์šด๋กœ๋“œ Vue ์—‘์…€ ๋‹ค์šด๋กœ๋“œ ์„œ๋ฒ„๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ํ™”๋ฉด ์ƒ์—์„œ xlsx ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ์—‘์…€ ๋‹ค์šด๋กœ๋“œ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. xlsx ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ npm install --save xlsx xlsx ๋ฅผ ์‚ฌ์šฉํ•œ ์—‘์…€ ๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„ import xlsx from 'xlsx'; ... excelDownload() { const fileName = 'excelFile';// ํŒŒ์ผ๋ช… const sheetName = 'sheet1';// ์‹œํŠธ๋ช… const header = [['์ด๋ฆ„', '๋‚˜์ด', '์ด๋ฉ”์ผ']];// ์ปฌ๋Ÿผ๋ช… const list = [{ name: 'ํ™๊ธธ๋™', age: 15, email: 'ํ™๊ธธ๋™@naver.com' }, { name: '๊น€๊ธธ๋™', age: 44, email: '๊น€๊ธธ๋™@naver.com'.. 2022. 6. 16.
vue router / query vs params vue router ๋ทฐ๋กœ ์‹ฑ๊ธ€ ํŽ˜์ด์ง€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌํ˜„ํ•  ๋•Œ ํ™”๋ฉด ์ „ํ™˜ ๋ฐ ํŽ˜์ด์ง€ ์ด๋™์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ์›น์—์„œ ๋ผ์šฐํŒ…์€ ํŽ˜์ด์ง€ ๊ฐ„์˜ ์ด๋™ ๋ฐฉ๋ฒ•์„ ๋œปํ•˜๋Š”๋ฐ ๋ทฐ๋Š” ํ™”๋ฉด ์ด๋™ ์‹œ DOM์„ ์ƒˆ๋กœ ๊ฐฑ์‹ ํ•˜์ง€ ์•Š๊ณ  ๋ณ€๊ฒฝ๋œ ์ปดํฌ๋„ŒํŠธ๋งŒ ๊ฐฑ์‹ ํ•˜์—ฌ ๊นœ๋นก์ž„ ์—†์ด ๋งค๋„๋Ÿฝ๊ฒŒ ์ „ํ™˜๋˜๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ํŽ˜์ด์ง€ ์ด๋™ ํƒœ๊ทธ๋กœ ํ™”๋ฉด์—์„œ ํƒœ๊ทธ๋กœ ์น˜ํ™˜๋˜์–ด ์‹คํ–‰๋œ๋‹ค. :to ์†์„ฑ path: ์ด๋™ํ•˜๋ ค๋Š” ๊ฒฝ๋กœ name: ์ด๋™ํ•˜๋ ค๋Š” ๊ฒฝ๋กœ๋ฅผ ๋ผ์šฐํ„ฐ์— ์„ค์ •๋œ ์ด๋ฆ„์œผ๋กœ ์ง€์ • query: query string ํ˜•ํƒœ๋กœ ์ „๋‹ฌ๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ, GET ๋ฐฉ์‹ params: name ์†์„ฑ์„ ์ง€์ •ํ•˜์—ฌ ์ด๋™ํ•  ๋•Œ(path๊ฐ€ ์•„๋‹Œ) ์ „๋‹ฌ๋  ํŒŒ๋ผ๋ฏธํ„ฐ, POST ๋ฐฉ์‹ query vs. params ๐Ÿง params๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด path๊ฐ€ ์•„๋‹Œ name์œผ๋กœ ์ด๋™.. 2022. 6. 14.
$nextTick() Vue DOM ์กฐ์ž‘ ์‹œ ์ฃผ์˜ํ•ด์•ผ ํ•  ์  Vue.js์—์„œ data ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๊ณ  ๋‚œ ์งํ›„ UI๊ฐ€ ๊ฐฑ์‹ ๋  ๋•Œ Vue๊ฐ€ DOM์„ ์ฐพ์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ๋„ ํ•œ๋‹ค. DOM์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, created ํ›…์—์„œ DOM์„ ์กฐ์ž‘ํ•˜๋ ค๊ณ  ํ•  ๋•Œ๋Š” ์•„์ง DOM ์ƒ์„ฑ์ด ๋˜๊ธฐ ์ „์ด๋ฏ€๋กœ ํƒœ๊ทธ๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๊ฒŒ ๋œ๋‹ค. created๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ์ž‘์„ฑ๋œ ํ›„ ๋™๊ธฐ์ ์œผ๋กœ ํ˜ธ์ถœ๋˜๋ฉฐ mounted๋ณด๋‹ค ๋จผ์ € ํ˜ธ์ถœ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์ƒ๋”์„ ์กฐ์ž‘ํ•  ์ˆ˜๋Š” ์—†๋‹ค. mounted๋Š” el์— ์ธ์Šคํ„ด์Šค๊ฐ€ ๋งˆ์šดํŠธ๋œ ์งํ›„ ํ˜ธ์ถœ๋˜์–ด ๊ฐ€์ƒ๋” ์กฐ์ž‘์ด ๊ฐ€๋Šฅํ•˜๋‹ค. created: function() { var dom = document.getElementById('item1'); dom.style.backgroundColor.. 2022. 4. 18.
Vue ์ƒ๋ช…์ฃผ๊ธฐ Vue ์ธ์Šคํ„ด์Šค ๋ผ์ดํ”„ ์‚ฌ์ดํด ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์‹œ ๋ฐ์ดํ„ฐ ๊ด€์ฐฐ, ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ, DOM ์— ๊ฐ์ฒด ์—ฐ๊ฒฐ, ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ ์‹œ DOM ์„ ์—…๋ฐ์ดํŠธ ํ•˜๊ฒŒ ๋œ๋‹ค. โ‘  Creation: ์ปดํฌ๋„ŒํŠธ ์ดˆ๊ธฐํ™” ๋‹จ๊ณ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ DOM์— ์ถ”๊ฐ€๋˜๊ธฐ ์ „, ํด๋ผ์ด์–ธํŠธ๋‹จ๊ณผ ์„œ๋ฒ„๋‹จ ๋ Œ๋”๋ง ๋ชจ๋‘์—์„œ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ์ผ๋กœ ์•„์ง ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋”์— ์ถ”๊ฐ€๋˜๊ธฐ ์ „์ด๊ธฐ ๋•Œ๋ฌธ์— ๋”์— ์ ‘๊ทผํ•˜๊ฑฐ๋‚˜ this.$el๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. - beforeCreate Vue.JS์˜ ๋ผ์ดํ”„ ์‚ฌ์ดํด ํ›… ์ค‘์—์„œ ๊ฐ€์žฅ ๋จผ์ € ์‹คํ–‰ ๋˜๋Š” ํ›…์ž…๋‹ˆ๋‹ค. data์™€ ์ด๋ฒคํŠธ($on, $once, $off, $emit), ๊ฐ์‹œ์ž($watch)๋“ฑ์ด ์„ค์ • ๋˜๊ธฐ ์ „์— ํ˜ธ์ถœ๋˜๋Š” ๋ผ์ดํ”„ ์‚ฌ์ดํด ํ›…์ด๋‹ค. - created data, computed, methods, watch ๋“ฑ๊ณผ ๊ฐ™์€ ์˜ต์…˜ ์„ค์ •์ด .. 2022. 4. 13.
Vue3 Composition API Composition API ๋ž€? Composition API๋Š” ์ปดํฌ๋„ŒํŠธ ๋กœ์ง์„ ์œ ์—ฐํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ํ•จ์ˆ˜ ๊ธฐ๋ฐ˜ API์ด๋‹ค. ๊ธฐ์กด์—๋Š” data, methods, computed์— ๋กœ์ง์ด ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์–ด ๋ฐ์ดํ„ฐ๊ฐ€ ์–ด๋””์—์„œ ์‚ฌ์šฉ๋˜๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ํž˜๋“ค์—ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ์˜ ๊ณ„์ธต๊ตฌ์กฐ๊ฐ€ ๋ณต์žกํ•ด์ง€๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ๊ฐ€ ์ปค์ง€๋ฉด ์ถ”์ฒ™ ๋ฐ ๊ด€๋ฆฌ์— ์–ด๋ ค์›€์ด ์žˆ๋‹ค. ์ปดํฌ์ง€์…˜ API๋Š” setup() ์ด๋ผ๋Š” ๋ฉ”์„œ๋“œ ์•ˆ์— ๋กœ์ง์„ ๋ชจ์•„๋†“๋Š” ๊ตฌ์กฐ์ด๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ณ€ํ™”ํ•˜๊ณ  ์‚ฌ์šฉ๋˜๋Š”์ง€ ๊ทธ๋ฃนํ•‘ํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ํ๋ฆ„ ํŒŒ์•…์ด ์‰ฝ๊ณ  ์œ ์ง€๋ณด์ˆ˜์— ์šฉ์ดํ•˜๋‹ค. Setup ํ•จ์ˆ˜ ์ปดํฌ๋„ŒํŠธ ๊ฐ์ฒด์—์„œ ์†์„ฑ์œผ๋กœ ๋ถ„๋ฆฌ๋˜์—ˆ๋˜ ๊ธฐ๋Šฅ ๋Œ€๋ถ€๋ถ„(data, methods, computed)์„ setup ํ•จ์ˆ˜ ์•ˆ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ, setup๋Š” beforeCre.. 2022. 4. 6.
Vuex / ์ƒํƒœ๊ด€๋ฆฌ / Vuex ํŒจํ„ด ๋ฐ ์š”์†Œ Vuex ๋ž€? Vue.js ์˜ ์ƒํƒœ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ํŒจํ„ด์ด์ž ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ๋ชจ๋“  ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ์ค‘์•™ ์ง‘์ค‘์‹ ์ €์žฅ์†Œ ์—ญํ• ์„ ํ•˜๋ฉฐ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ๋ฐฉ์‹์œผ๋กœ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค. Vuex ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ํ•œ ํ™”๋ฉด์„ ์ž‘์€ ๋‹จ์œ„์˜ ์ปดํฌ๋„ŒํŠธ ์—ฌ๋Ÿฌ ๊ฐœ๋กœ ์ชผ๊ฐœ์–ด ๊ตฌ์„ฑํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ทฐ์—์„œ๋Š” ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ์œ„ํ•ด emit, props ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์—ฌ๊ธฐ์„œ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ์ ์ด ์žˆ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ์›€์ง์ž„์„ ํ™•์ธํ•  ์ˆ˜ ์—†๋‹ค. ๋ถ€๋ชจ-์ž์‹ ์ปดํฌ๋„ŒํŠธ์˜ ๊ด€๊ณ„๊ฐ€ ๋ณต์žกํ•ด์ง€๋ฉด ๋ฐ์ดํ„ฐ์˜ ์ด๋™์„ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ์ปดํฌ๋„ŒํŠธ๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌ๋ฐ›๊ธฐ ์œ„ํ•ด ์ค‘๊ฐ„์— ๊ฑฐ์ณ์•ผ ํ•  ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋งŽ์•„์ง„๋‹ค. ๋จผ์ €, ์ž์‹ ์ปดํฌ๋„ŒํŠธ์˜ ๊นŠ์ด์— ๋”ฐ๋ผ props, emit ์˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉฐ ๊ด€๋ฆฌ์— ์–ด๋ ค์›€์ด ์ƒ๊ธด๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ๋ถ€.. 2022. 4. 5.
Vue ๋ผ์šฐํ„ฐ / SPA / Router ๊ฐ’ ์ „๋‹ฌ SPA (Single Page Application) ์ผ๋ฐ˜์ ์ธ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์›น ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•˜๋ฉด ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ html ์„ ์ „๋‹ฌ ๋ฐ›์•„ ๋ Œ๋”๋ง ์—”์ง„์„ ํ†ตํ•ด ํ™”๋ฉด์— ๋ณด์—ฌ์ค€๋‹ค. ํ•œ ํŽ˜์ด์ง€์— ํ•ด๋‹นํ•˜๋Š” ํŽ˜์ด์ง€ ์šฉ๋Ÿ‰์ด ์ปค์ง€๋ฉด ์š”์ฒญ๋งˆ๋‹ค ๋งค๋ฒˆ ์ƒˆ๋กœ์šด ํŽ˜์ด์ง€๋ฅผ ์ „๋‹ฌ ๋ฐ›๊ธฐ ๋ฒ„๊ฒ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์ด SPA, Single Page Application ์ด๋‹ค. SPA ๋Š” ๋‹จ์ผ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€์— ๋‹ด์•„ ๋™์ ์œผ๋กœ ํ™”๋ฉด์„ ๋ฐ”๊ฟ”๊ฐ€๋ฉฐ ํ‘œํ˜„ํ•œ๋‹ค. ํŽ˜์ด์ง€ ๋ณ€๊ฒฝ์ด ์ผ์–ด๋‚œ๋‹ค๋Š” ๊ฒƒ์ด ์ตœ์ดˆ ๋กœ๋“œ๋˜์—ˆ์„ ๋•Œ ๋ฏธ๋ฆฌ ๋ธŒ๋ผ์šฐ์ €์— ์˜ฌ๋ผ๊ฐ„ ํ…œํ”Œ๋ฆฟ๋งŒ ๊ต์ฒดํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ™”๋ฉด ์ด๋™ ์‹œ์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ html ๋กœ ์ „๋‹ฌ(์„œ๋ฒ„์‚ฌ์ด๋“œ ๋ Œ๋”๋ง) ๋ฐ›์ง€ ์•Š๊ณ  ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ „๋‹ฌ ๋ฐ›์•„ ๋™์ .. 2022. 4. 4.
Vue ์ปดํฌ๋„ŒํŠธ / ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹  Vue ์ปดํฌ๋„ŒํŠธ ์ปดํฌ๋„ŒํŠธ๋Š” ํ™”๋ฉด์˜ ์˜์—ญ์„ ์ผ์ •ํ•œ ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์–ด ์žฌํ™œ์šฉ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Vue ์—์„œ ์ตœ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ๋Š” root ๊ณ  ์ด๋ฅผ ์‹œ์ž‘์œผ๋กœ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ํ˜•์„ฑ๋œ๋‹ค. - ์ „์—ญ ์ปดํฌ๋„ŒํŠธ ์—ฌ๋Ÿฌ ์ธ์Šคํ„ด์Šค์—์„œ ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉ, ๋ชจ๋“  ์ž์‹ ์ปดํฌ๋„ŒํŠธ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ฃผ๋กœ ํ”Œ๋Ÿฌ๊ทธ์ธ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋“ฑ ์•ฑ ์ „์—ญ์—์„œ ์‚ฌ์šฉํ•  ๊ณตํ†ต ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. vue ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์ „์— ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งŒ๋“ค์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. Vue.component('component-a', { template: ' hello world AAA !!!'}) Vue.component('component-b', { template: ' hello world BBB !!!'}) Vue.component('component-c', { templat.. 2022. 4. 4.
Vue ์‚ฌ์šฉ๋ฒ• / ๋ฌธ๋ฒ• / ์˜ต์…˜ / ๋””๋ ‰ํ‹ฐ๋ธŒ Vue.js ์ ์šฉ ๋ฐฉ๋ฒ• ๐Ÿ‘†CDN ๋ฐฉ์‹์œผ๋กœ Vue ์‹œ์ž‘ํ•˜๊ธฐ - ๊ฐœ๋ฐœ์šฉ // ์ตœ์‹ ๋ฒ„์ „ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ // ํŠน์ •๋ฒ„์ „ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ - ์ƒ์šฉ โœŒ๏ธWebpack ๋ฐฉ์‹์œผ๋กœ Vue ์‹œ์ž‘ํ•˜๊ธฐ npm์œผ๋กœ cli๋ฅผ ์„ค์น˜ํ•ด vue ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ์‹์ด๋‹ค. npm install -g @vue/cli # OR yarn global add @vue/cli ๐Ÿ”Ž npm(Node Package Manager) node.js์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“ˆ๋“ค์„ ํŒจํ‚ค์ง€๋กœ ๋งŒ๋“ค์–ด npm์„ ํ†ตํ•ด์„œ ๊ด€๋ฆฌํ•˜๊ณ  ๋ฐฐํฌํ•œ๋‹ค. ์ง์ ‘ ๊ฐœ๋ฐœํ•œ ๋ชจ๋“ˆ์ด๋‚˜ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค์ด ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด๋†“์€ ๋ชจ๋“ˆ์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋‹ค์šด๋ฐ›์•„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ”Ž Node.js ๋„คํŠธ์›Œํฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํ”Œ๋žซํผ์œผ๋กœ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉํ•˜๊ณ  ๋‚ด์žฅ http ์„œ๋ฒ„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ์›น .. 2022. 3. 28.
Vue.js ๊ธฐ๋ณธ ๊ฐœ๋… / ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  / ๊ฐ€์ƒ ๋” Vue.js ๋ž€? ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(์ดํ•˜ js) ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ์›น ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ ํ•˜๋‚˜์ด๋‹ค. MVVM ํŒจํ„ด์˜ ViewModel ๋ ˆ์ด์–ด์— ํ•ด๋‹นํ•˜๋Š” ํ™”๋ฉด๋‹จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด DOM์— ๋‹ค์‹œ ๋Œ€์ž…ํ•ด์ค˜์•ผ ํ™”๋ฉด์ด ๋ณ€๊ฒฝ๋˜์—ˆ๋˜ ์ผ๋ฐ˜์ ์ธ ์›น ๊ฐœ๋ฐœ ๋ฐฉ์‹๊ณผ ๋‹ค๋ฅด๊ฒŒ, ๋ฐ์ดํ„ฐ ๋ณ€ํ™”๋ฅผ ๊ฐ์ง€ํ•˜์—ฌ ํ™”๋ฉด์— ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๋ฐ”๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค. MVVM ํŒจํ„ด์„ ์‚ฌ์šฉํ•œ๋‹ค. Virtual DOM์„ ์‚ฌ์šฉํ•œ๋‹ค.(React์˜ ๊ฐ€์ƒ ๋” ์ฑ„ํƒ) ์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์ œ๊ณตํ•œ๋‹ค.(Angular์˜ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ์ฑ„ํƒ) Template์™€ Component๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์žฌ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ ๋‹ค. ์™œ Vue.js ๋ฅผ ์‚ฌ์šฉํ• ๊นŒ? 1. ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์ด ๊ฐ„ํŽธํ•˜๋‹ค. ์•„๋ž˜ HTML ์ฝ”๋“œ์—์„œ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ? hello.. 2022. 3. 17.