반응형
vuex에서 getters, mutations를 작성한 후 각종 파일에서 store 변수를 활용하여 써놓은 함수를 불러오는데, 만약 위와 같은 에러가 나타난다면 두가지를 확인해봐야함.
1. namespaced 유무
const state = {
// ...
}
const actions = {
// ...
}
export default {
namespaced: true, // 여기
state,
actions
}
2. 모듈화 되어있다면 이름을 써주었는지 확인
// index.js
import user from "./user.js";
export default createStore({
modules: { // 이런식으로 모듈화 되어있다면
user,
}
});
// user.js
const states = {
name: '';
};
const getters = {
getUserName: (state) => {
return state.name;
},
};
const mutations = {
setUserName: (state, name) => {
return state.name = name;
},
};
// dashboard.vue
const userName = store.getters["user/getUserName"]; // 앞에 users썼나 확인
store.commits("user/setUserName"); // 앞에 users썼나 확인
'vue' 카테고리의 다른 글
vue-i18n 특수문자 에러 (0) | 2023.04.28 |
---|---|
[vue3] 동적인 ref 쓰기 (0) | 2023.03.28 |
[vue3] 부모 컴포넌트에서 자식 컴포넌트 함수 실행하기 (2) | 2023.03.22 |
[vue] router로 데이터 보내기(params, query) (1) | 2023.03.20 |
[vue3] markRow로 들어간 컴포넌트에서 watch쓰기 (0) | 2023.03.15 |