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

๐Ÿ’ปWEB FrontEnd

(66)
Vue Router ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ฐธ๊ณ ํ•˜๋ฉด ์ข‹์„ ์‚ฌ์ดํŠธ router.vuejs.org/kr/installation.html router.vuejs.org/kr/api/#router-link 1. Routing ๋ผ์šฐํŒ…์ด๋ž€ ์›น ํŽ˜์ด์ง€ ๊ฐ„์˜ ์ด๋™ ๋ฐฉ๋ฒ•์„ ๋งํ•œ๋‹ค. ๋ผ์šฐํŒ…์„ ์ด์šฉํ•˜๋ฉด ํ™”๋ฉด ๊ฐ„์˜ ์ „ํ™˜์ด ๋งค๋„๋Ÿฝ๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ(๋ทฐ, ๋ฆฌ์•กํŠธ, ์•ต๊ธ€๋Ÿฌ) ๋ชจ๋‘ ๋ผ์šฐํŒ…์„ ์ด์šฉํ•˜์—ฌ ํ™”๋ฉด์„ ์ „ํ™˜ํ•˜๊ณ  ์žˆ๋‹ค. ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ , ์ผ๋ฐ˜ HTMLํŒŒ์ผ๋“ค๋กœ๋„ ๋ผ์šฐํŒ… ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ผ์šฐํŒ… ๋ฐฉ์‹์˜ ํŽ˜์ด์ง€ ์ด๋™์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. 2. Vue Router ๋ทฐ ๋ผ์šฐํ„ฐ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ทฐ๋กœ ๋งŒ๋“  ํŽ˜์ด์ง€ ๊ฐ„์— ์ž์œ ๋กญ๊ฒŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. ํƒœ๊ทธ ์„ค๋ช… ํŽ˜์ด์ง€ ์ด๋™ ํƒœ๊ทธ ํ™”๋ฉด์—์„œ๋Š” ๋กœ ํ‘œ์‹œ๋œ๋‹ค. ํŽ˜์ด..
Vue Componets ํ†ต์‹  ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ๋ชฉ์ฐจ 1. ์ƒ·ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹  2. ๊ฐ™์€ ๋ ˆ๋ฒจ์˜ ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹  3. ๊ด€๊ณ„ ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹  ํ•œ ํ™”๋ฉด์— ์žˆ๋”๋ผ๋„ ๊ฐ ์ปดํฌ๋„ŒํŠธ์˜ ์œ ํšจ๋ฒ”์œ„๋Š” ๋…๋ฆฝ์ ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ์ปดํฌ๋„ŒํŠธ์˜ ๊ฐ’์„ ์ง์ ‘์ ์œผ๋กœ ์ฐธ์กฐํ•  ์ˆ˜ ์—†๋‹ค. 1. ์ƒ·ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹  ์ง€์—ญ ๋˜๋Š” ์ „์—ญ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋“ฑ๋กํ•˜๋ฉด ๋“ฑ๋ก๋œ ์ปดํฌ๋„ŒํŠธ๋Š” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋˜๊ณ , ์ž์‹ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋“ฑ๋กํ•œ ์ธ์Šคํ„ด์Šค๋Š” ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋œ๋‹ค. 1) ์ƒ์œ„์—์„œ ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ(Pass Props) ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ์˜ ์†์„ฑ์— props์†์„ฑ์„ ์ •์˜ํ•˜๊ณ , Vue.component('child-component', { props: ['props์†์„ฑ์ด๋ฆ„'] }); ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ์˜ HTML์ฝ”๋“œ์— ๋“ฑ๋ก๋œ child-componen..
Vue Componets ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ๋ชฉ์ฐจ 1) Vue Componets 2) ์ปดํฌ๋„ŒํŠธ ๋“ฑ๋ก Vue Componets 1) Vue Componets ํ™”๋ฉด์˜ ์š”์†Œ๋“ค(๋‚ด๋น„๊ฒŒ์ด์…˜ ๋ฐ”, ํ…Œ์ด๋ธ”, ๋ฆฌ์ŠคํŠธ, input ๋ฐ•์Šค ๋“ฑ)์„ ์ž˜๊ฒŒ ์ชผ๊ฐœ์–ด ์ปดํฌ๋„ŒํŠธ๋กœ ๊ด€๋ฆฌํ•œ๋‹ค. ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ํ™”๋ฉด์„ ๋น ๋ฅด๊ฒŒ ๊ตฌ์กฐํ™”ํ•˜์—ฌ ์ผ๊ด„์ ์ธ ํŒจํ„ด์œผ๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ๊ด€๊ณ„(treeํ˜•ํƒœ)๋Š” ๋ทฐ์—์„œ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•˜๋Š”๋ฐ ๋งค์šฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์›น ํŽ˜์ด์ง€ ํ™”๋ฉด์„ ์„ค๊ณ„ํ•  ๋•Œ๋„ ์ด์™€ ๊ฐ™์€ ๊ณจ๊ฒฉ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ์„ค๊ณ„๋ฅผ ํ•ด์•ผ ํ•œ๋‹ค. 2) ์ปดํฌ๋„ŒํŠธ ๋“ฑ๋ก ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„์€ template์†์„ฑ์—์„œ ์‚ฌ์šฉํ•  HTML ์‚ฌ์šฉ์ž ์ •์˜ ํƒœ๊ทธ ์ด๋ฆ„์„ ์ž‘์„ฑํ•œ๋‹ค. ์ปดํฌ๋„ŒํŠธ ๋‚ด์šฉ์—๋Š” ์ปดํฌ๋„ŒํŠธ ํƒœ๊ทธ๊ฐ€ ์‹ค์ œ ํ™”๋ฉด์˜ HTML ์š”์†Œ๋กœ ๋ณ€ํ™˜๋  ๋•Œ ํ‘œ์‹œ๋  ์†์„ฑ๋“ค์„ ์ž‘์„ฑํ•˜๊ณ , ์ธ์Šคํ„ด์Šค..
Vue Instance ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ๋ชฉ์ฐจ 1) Vue Instance 2) Vue Instance ์ƒ์„ฑ์ž 3) Vue Instance ์˜ต์…˜ ์„ค์ • 4) Vue Instance ๋ผ์ดํ”„ ์‚ฌ์ดํด 5) Vue Instance ๋ผ์ดํ”„ ์‚ฌ์ดํด ์ดˆ๊ธฐํ™” 1. Vue Instance 1) Vue Instance Vue.js๋กœ ํ™”๋ฉด์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ๊ผญ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋ณธ ํ•„์ˆ˜ ๋‹จ์œ„ new Vue({ ... }); 2) Vue Instance ์ƒ์„ฑ์ž new Vue()๋กœ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ Vue๋ฅผ ์ƒ์„ฑ์ž๋ผ๊ณ  ํ•œ๋‹ค. Vue์ƒ์„ฑ์ž๋Š” ๋ทฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋กœ๋”ฉํ•˜๊ณ  ๋‚˜๋ฉด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. Vue๋กœ ๊ฐœ๋ฐœํ•  ๋•Œ ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋“ค์„ ์ƒ์„ฑ์ž์— ๋ฏธ๋ฆฌ ์ •์˜ํ•ด ๋†“๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๊ทธ ๊ธฐ๋Šฅ์„ ์žฌ์ •์˜ํ•˜์—ฌ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 3) Vue Instance ์˜ต์…˜ ..
Vue ์‹œ์ž‘ํ•˜๊ธฐ (+๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ •) ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ๋ชฉ์ฐจ 1. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • 2. Vue ์‹œ์ž‘ํ•˜๊ธฐ 3. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋กœ ์ฝ”๋“œ ํ™•์ธ 1. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • ๋ทฐ๋กœ ์›น ์•ฑ์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ํ™˜๊ฒฝ์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋„๊ตฌ๋“ค์„ ์„ค์น˜ [๋” ๋งŽ์€ ํŒจํ‚ค์ง€ ์ถ”๊ฐ€ https://ict-nroo.tistory.com/84] ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ € Vue CLI ์„ค์น˜ Node.js ๋ทฐ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ(Vue.js devtools, ํฌ๋กฌ ํ™•์žฅ ํ”Œ๋Ÿฌ๊ทธ์ธ) โ€ป Vue CLI ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ž˜ ์ •๋ฆฌํ•ด๋†“์€ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐพ์•˜๋‹ค. - kdydesign.github.io/2019/04/22/vue-cli3-tutorial/ 2. Vue ์‹œ์ž‘ํ•˜๊ธฐ 1) ์ฝ”๋“œ ์ž‘์„ฑ index.html : ๋ทฐ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋กœ๋”ฉ์‹œ์ผœ ๋ฉ”์„ธ์ง€๋ฅผ ์ถœ๋ ฅ์‹œํ‚ค๋Š” ์ฝ”๋“œ ์ž‘์„ฑ {{ message }} ํฌ๋กฌ ๋ธŒ๋ผ์šฐ..
Vue.js๋ž€? ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. 1. Vue.js๋ž€ ๋ฌด์—‡์ธ๊ฐ€? UI๋‹จ์—์„œ ๋ฐ์ดํ„ฐ(๋ชจ๋ธ)์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ (ํ™”๋ฉด์„ ์ด์˜๊ฒŒ ๋งŒ๋“œ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์•„๋‹˜!!) 1) FrontEnd Framework์˜ ์ข…๋ฅ˜ - React ํƒ„ํƒ„ํ•œ ์•„ํ‚คํ…์ณ ES6 ํ•„์ˆ˜ ์ปจ๋ฒ„ํŒ… ํ•˜๋Š”๋ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŽ์ด ๋จน์Œ. ํŽ˜์ด์Šค๋ถ - Angular Typescript ์‚ฌ์šฉ ๊ตฌ๊ธ€ - Vue.js Page์ˆ˜์ค€์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฐธ์กฐ(script ํƒœ๊ทธ)๊ฐ€ ๊ฐ€๋Šฅ. ๊ฐ€๋ฒผ์›€. React์™€ Angular์˜ ์žฅ์ ์„ ์ฐจ์šฉํ•ด์„œ ๋งŒ๋“ฆ. ์•Œ๋ฆฌ๋ฐ”๋ฐ” 2) Vue์˜ ์žฅ์  Angular์—์„œ ์ง€์›ํ•˜๋Š” ์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ๋™์ผํ•˜๊ฒŒ ์ œ๊ณต ์ปดํฌ๋„ŒํŠธ ๊ฐ„ ํ†ต์‹ ์˜ ๊ธฐ๋ณธ ๊ณจ๊ฒฉ์€ React์˜ ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„(๋ถ€๋ชจ -> ์ž์‹)์„ ์‚ฌ์šฉ ๋‹ค๋ฅธ ํ”„๋ŸฐํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ(..