Vuex - ChoDragon9/posts GitHub Wiki
title: Vuex sidebar: auto
์๊ฐ
Vuex๋ Vue ์ดํ๋ฆฌ์ผ์ด์ ์ ์ํ ๊ด๋ฆฌ ์ํคํ ์ณ๋ฅผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ ๊ณตํ ๊ฒ์ด๋ค. Flux, Redux, Elm ์ํคํ ์ฒ์์ ์๊ฐ์ ๋ฐ์ Vue์ ๋ฐ์ํ ์์คํ ์ ํ์ฉํ๋๋ก ํน๋ณํ ๊ณ ์๋ ์ํคํ ์ณ์ด๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ ์ปดํฌ๋ํธ์ ๋ํ ์ค์ ์ง์ค์ ์ ์ฅ์ ์ญํ ์ ํ๋ฉฐ ์์ธก ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ์ํ๋ฅผ ๋ณ๊ฒฝํ ์ ์๋ค.
Vuex๋ Store๋ผ๋ ์ปจํ ์ด๋๋ฅผ ์ ๊ณตํ๋ค. Store๋ State, Getters, Mutations, Actions, Modules๋ก ์ด๋ฃจ์ด ์ง๋ค.
State๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ํ๋ฅผ ๊ฐ์ง๊ณ , Getters๋ State์ ๊ณ์ฐ๋ ์์ฑ์ด๋ค. Mutations์ State์ ๋ณ๊ฒฝ์ ์ํ ์ ์ผํ ๋ฐฉ๋ฒ์ด๊ณ Actions๋ ๋น๋๊ธฐ ์์ ์ ํ๋ค. Actions์ ์ํ๋ฅผ ๋ณ๊ฒฝํ๊ธฐ ์ํด Mutations์๊ฒ ์ ํํ๋ค.
๋ง์ง๋ง์ผ๋ก Modules๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ๊ท๋ชจ๊ฐ ์ปค์ง ๋ State, Getters, Mutations, Actions๋ฅผ ๋ถํ ํ์ฌ ์ ์ธํ๋ ์ญํ ์ ํ๋ค.
State
State๋ ์ํ๋ฅผ ๋ด๋นํ๋ค. Vuex๋ ๋จ์ผ ์ํ ํธ๋ฆฌ๋ฅผ ๊ฐ์ง๋ค. ๋จ์ผ ๊ฐ์ฒด๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ ์ํ๋ฅผ ํฌํจํ๋ฉฐ ์๋ณธ ์์ค์ ์ญํ ์ ํ๋ค. ์ดํ๋ฆฌ์ผ์ด์ ๋ง๋ค ํ๋์ ์ ์ฅ์๋ง ๊ฐ๊ฒ ๋๋ค. Vuex๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๋ชจ๋ ์ํ๋ฅผ Vuex์ ๋ฃ์ด์ผ ๋๋ ๊ฒ์ ์๋๋ค. ๋จ์ผ ์ปดํฌ๋ํธ์๊ฒ๋ง ์ํ๋ ์ํ์ ๊ฒฝ์ฐ ์ปดํฌ๋ํธ์ ๋จ๊ฒจ ๋ ์ ์์ผ๋ฉฐ ๊ธฐํ๋น์ฉ์ ํ๋จํ๊ณ ์๋ง๋ ์์น์ ์ ์ํด์ผ ํ๋ค.
Getters
Getters๋ State๋ฅผ ๊ธฐ๋ฐํ์ฌ ๊ณ์ฐ๋ ์ํ๋ฅผ ๋ง๋ค ์ ์๋ค. Getters์ ๊ณ์ฐ ๊ฒฐ๊ณผ๋ ์ข ์์ฑ์ ๋ฐ๋ผ ๋ณ๊ฒฝ์ด ์์ ๊ฒฝ์ฐ ์บ์๋ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ค. ์ผ๋ถ์ ์ข ์์ฑ์ด ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ์๋ง ๋ค์ ๊ณ์ฐ๋๋ค. ํ์ง๋ง ๋ฐํ๊ฐ์ด ํจ์์ผ ๊ฒฝ์ฐ ์บ์๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ ์ํด์ผ ํ๋ค.
Mutations
Mutations์ State๋ฅผ ๋ณ๊ฒฝํ๋ ์ ์ผํ ๋ฐฉ๋ฒ์ด๋ค. Mutations์ ์ด๋ฒคํธ์ ์ ์ฌํ๋ค. ๊ฐ Mutations์ ํธ๋ค๋ฌ ํจ์๊ฐ ์๊ณ ํธ๋ค๋ฌ ํจ์์์ ์ค์ ์ํ๋ฅผ ์์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ํ ๋ณ๊ฒฝ์ ๋น๋๊ธฐ๋ก ๋ณ๊ฒฝ์ด ๋ ๊ฒฝ์ฐ ์ถ์ ํ๊ธฐ ํ๋ค๊ธฐ ๋๋ฌธ์ Mutations์ ๋๊ธฐ์ ์ผ๋ก ๋์๋์ผ ํ๋ค. ๋น๋๊ธฐ ์์ ์ด ํ์ํ ๊ฒฝ์ฐ Actions์ ํตํด ํธ์ถ๋๋๋ก ํด์ผ ํ๋ค.
Actions
Actions์ ๋น๋๊ธฐ ์์ ๊ณผ Mutations์๊ฒ ์ํ ๋ณ๊ฒฝ ์์ฒญ์ ํ๋ค. ๋น๋๊ธฐ ์์ ์ ํ๋ฆ ์ ์ด์ ์ฌ๋ฌ ๊ฐ์ ์ํ ๋ณ๊ฒฝ์ ์์ฒญํ๋ ์์ ์ Actions์์ ์ํํ๋ค. ๊ทธ๋ฆฌ๊ณ ํ Action์ ๋ค๋ฅธ Action์ ํฌํจํ์ฌ ์กฐ์ํ ์ ์๋ค. ๊ทธ๋์ ์ํ๋ณ๊ฒฝ ์์ ์ ๋น๋๊ธฐ ์์ ์ ๋ถ๋ฆฌํ์ฌ ์ํํ ์ ์๋ค.
Modules
Modules๋ ์ ์ฅ์๋ฅผ ๋ชจ๋๋ก ๋๋๋ ์ญํ ์ ํ๋ค. ๊ฐ ๋ชจ๋์ ์์ฒด์ ์ผ๋ก State, Mutations, Actions, Getters์ ๊ฐ์ง ์ ์์ผ๋ฉฐ ๋ด๋ถ์ ์ผ๋ก ๋ ๋ชจ๋์ ๊ฐ์ค ์ ์๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๋ชจ๋ ๋ด์ ๊ฐ ์์๋ค์ ๋ฑ๋กํ๋๋ผ๋ ์ ์ญ์ ๋ฑ๋ก์ด ๋๋ค. ๋ ๋ฆฝ์ ์ผ๋ก ๋์์ ํ๋ ค๋ฉด ๋ค์์คํ์ด์ค ์ค์ ์ ํตํด ๊ฐ๋ฅํ๋ค.