본 내용은 인프런 장기효(캡틴판교)님의 Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념 강의를 토대로 작성하였습니다.
1. Vuex
- Vue의 상태(State)관리 도구
- 상태: 여러 컴포넌트 간에 공유되는 데이터 속성
- 서비스가 복잡해 졌을 때, 데이터를 다른 컴포넌트에 공유해야할 수도 있음
- 컴포넌트 레벨이 깊어지거나 관계가 복잡했을 때 상태관리 도구는 유용하게 사용
- 컴포넌트에서 API를 불러와 화면을 그리는 것이 아닌, Vuex에서 API를 불러옴
- Vuex의 State에 API로 부터 받아온 데이터를 담음
- State를 컴포넌에 전달하여 화면을 그림
Vuex 설치
npm i vuex
2. Vuex 모듈화 및 state 적용
Vuex 모듈화
- Vuex와 관련된 코드를 별도의 폴더에 정리하여 모듈화
// src/store/index.js
import Vue from 'vue';
import Vuex from 'vuex';
// Vuex는 플러그인 형식으로 제공
Vue.use(Vuex);
// Vuex 인스턴스
export const store = new Vuex.Store({
state : {
news: []
}
})
Vuex 모듈 Vue에 적용하기
// src/main.js
import Vue from 'vue'
import App from './App.vue'
import { router } from './routes/index.js';
import { store } from './store/index.js';
Vue.config.productionTip = false
new Vue({
render: h => h(App),
router,
store,
}).$mount('#app')
Reference
'programming study > Vue' 카테고리의 다른 글
Vue.js - Vuex Helper, 스토어 속성 모듈화 (0) | 2021.12.23 |
---|---|
Vue.js - Vuex Actions와 Mutations (0) | 2021.12.22 |
Vue.js - axios의 api 함수 구조화 방법, created & beforeMount (0) | 2021.12.18 |
Vue.js - axios를 이용한 api 호출 (0) | 2021.12.17 |
Vue.js - 라우터 링크 스타일링, mode history (0) | 2021.12.16 |