๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • What would life be If we had no courage to attemp anything?
๐“๐จ๐๐š๐ฒ ๐ˆ ๐‹๐ž๐š๐ซ๐ง

๐“๐จ๐๐š๐ฒ ๐ˆ ๐‹๐ž๐š๐ซ๐ง 2022.05.11.์ˆ˜

by DevIseo 2022. 5. 11.

Today I Learn 220511

์˜ค๋Š˜์€ Vuex์— ๋Œ€ํ•ด ํ•™์Šตํ•˜์˜€๋‹ค.

Vuex๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋‹ค์–‘ํ•œ ์ปดํฌ๋„ŒํŠธ๋“ค์ด ์žˆ์„ ๋•Œ ๊ธฐ์กด์˜ Vueํ™˜๊ฒฝ์€ ๊ฐ๊ฐ์˜ ์ปดํฌ๋„ŒํŠธ๋งˆ๋‹ค data๋ฅผ ๋“ค๊ณ  ์žˆ์ง€๋งŒ, ๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด emit๊ณผ props๋ฅผ ๊ณ„์† ๊ฑฐ์ณ ํ†ต์‹ ํ•ด์•ผ ํ•˜๊ณ  ๋‚˜์™€ ๊ฐ™์€ ๋™๊ธฐ component์™€ ๋Œ€ํ™”ํ•  ๋•Œ๋„ ์—ฌ๋Ÿฌ๋ช…์„ ๊ฑฐ์ณ ํ†ต์‹ ํ•ด์•ผ ํ•œ๋‹ค.

 

 

์ด๋Ÿฌํ•œ ๋ถˆํŽธํ•จ์„ ํ•ด์†Œํ•˜๊ธฐ ์œ„ํ•ด Vuex๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค! Vuex์—์„œ๋Š” index.js๋ผ๋Š” ๊ณณ์—์„œ (๋งˆ์น˜ ๊ณต์šฉํ†ต์žฅ) data๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ ๊ณต์šฉ์œผ๋กœ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋‹ˆ ํŽธ๋ฆฌ์„ฑ์€ ์ฆ๊ฐ€ ๋œ ๋ฐ˜๋ฉด ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ž˜ ํ•ด์•ผํ•˜๋Š” ๋‹จ์ ์ด ์ƒ๊ฒผ๋‹ค!

 

 

์–ด์จ‹๋“ , Vuex์˜ core ๊ฐœ๋…์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

- State

โ€‹ ์ค‘์•™์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ชจ๋“  ์ƒํƒœ ์ •๋ณด (data)

-Getters

โ€‹ state๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ํ™œ์šฉํ•˜์—ฌ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ (computed ์†์„ฑ๊ณผ ์œ ์‚ฌ)

- Mutations

โ€‹ ์‹ค์ œ๋กœ state๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•

-Actions

โ€‹ Mutations์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐจ์ด์ ์ด ์žˆ์Œ

1. state๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋Œ€์‹  mutations๋ฅผ commit() ๋ฉ”์„œ๋“œ๋กœ ํ˜ธ์ถœํ•ด์„œ ์‹คํ–‰ 
1.  mutations์™€ ๋‹ฌ๋ฆฌ ๋น„๋™๊ธฐ ์ž‘์—…์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Œ (Backend API์™€ ํ†ต์‹ ํ•˜์—ฌ Data Fetching ๋“ฑ์˜ ์ž‘์—… ์ˆ˜ํ–‰)

 

 

์ด ๊ฐœ๋…๋“ค์„ ์ด์šฉํ•ด Vuex๋ฅผ ์ด์šฉํ•œ ToDo App์„ ๊ตฌํ˜„ํ•˜๋Š” ์‹ค์Šต์„ ํ–ˆ๋‹ค.

2022.05.11 - [IT โ‘ก/Vue.js] - Vue.js - Vuex๋ฅผ ํ™œ์šฉํ•œ Todo App ๊ตฌํ˜„ํ•˜๊ธฐ

 

Vue.js - Vuex๋ฅผ ํ™œ์šฉํ•œ Todo App ๊ตฌํ˜„ํ•˜๊ธฐ

์ตœ์ƒ์œ„ ๋ฃจํŠธ - App.vue App.vue์˜ ์ž์‹ Component : TodoList.vue, TodoForm.vue TodoList.vue์˜ ์ž์‹ Component: TodoListItem.vue โ•index.js - Vuex core concepts๊ฐ€ ์ž‘์„ฑ import Vue from 'vue' import Vuex..

luminous24.tistory.com

 

๋Œ“๊ธ€