상태관리와 Store
1. Store
- 컴포넌트끼리 데이터를 공유할 때 props나 event bus를 이용할 수 있지만 가장 효율적인 방법은 Store이다 (Vuex)
- 데이터를 Store에 담으면 프로젝트 내 컴포넌트에서 Store 에 담긴 데이터를 꺼내서 사용할 수 있다.
2. Vuex 설치 및 연결
- 설치
npm i vuex
- vuex는 프로젝트 내 package.json 의 dependencies에 들어가게 된다.
3. 프로젝트 세팅
- src/store 폴더 생성
- src/store/index.js 파일 생성
- src/main.js
- 사용할 컴포넌트 (ex. HelloWorld.vue)
그런데 간혹 아래와 vue2 버젼에서 this.$store를 사용 하려고 할 때 store가 인식 되지 않는 경우가 있습니다.
이 경우는 사용자가 vue2 버젼에서 vuex 4버젼 이상을 사용해서 일어나는 현상으로 vuex 4버젼은 vue3 버젼 에 서 vuex3 이하 버젼은 vue2 버젼에서 사용 가능하기 때문입니다.
What is Vuex? | Vuex
What is Vuex? Vuex is a state management pattern + library for Vue.js applications. It serves as a centralized store for all the components in an application, with rules ensuring that the state can only be mutated in a predictable fashion. It also integrat
v3.vuex.vuejs.org
4. 해결방법
- pakage.json 내 vuex 버젼을 4 -> 3버젼으로 변경하거나. vue2 -> vue3 버젼으로 변경처리
- npm i vuex@3 으로 vuex 최초 설치 시 3버젼으로 받아온다.
'Front-end > vue' 카테고리의 다른 글
[vite, vue] 확장자를 생략하여 가져올 때 생기는 오류 (0) | 2024.04.26 |
---|---|
Vue 에서 input 태그에 @click과 @change 사용 시 생긴 이슈 (1) | 2024.01.24 |
[vue, es-lint] no-unused-vars 에러 문구 해결 (0) | 2023.05.25 |
[vue-cli] Invalid Host header (0) | 2022.11.10 |
[VS] Delete `␍` prettier/prettier 해결 방법 (1) | 2022.11.10 |