반응형
오류: [vuex]에서 문자열이 유형으로 예상되지만 정의되지 않았습니다.
Vuex 공부 중.예시 프로젝트와 문서에 대해 간단한 로그인 페이지를 작성했는데, 액션 기능을 사용하려고 하면 개발자 툴이 경고해 주었습니다.
코드는 다음과 같습니다.
src/views/로그인표시하다
handleLogin (formName) {
this.$refs[formName].validate(valid => {
if (valid) {
// to do
this.$store.dispatch('user/login', this.loginUser)
} else {
......
})
}
})
src/store/index.disples
import Vue from 'vue'
import Vuex from 'vuex'
import user from './modules/User/user'
// import info from './modules/info'
Vue.use(Vuex)
export default new Vuex.Store({
strict: false,
modules: {
user,
// info
}
})
/src/store/modules/User/actions.js
export const userActions = {
login({commit}, loginUser) {
commit(LOGIN)
axios.post(`${ API_BASE_USER }/login`, loginUser)
.then(res => {
console.log(res)
if (res.status == 200) { commit(LOGIN_SUCCESS, res.data) }
else { commit(LOGIN_FAILURE, res.data) }
})
}
}
/src/store/modules/User/user.js
import { userActions } from './actions'
import { userMutations } from './mutations'
export default {
namespaced: true,
state: {
token: ''
},
actions: Object.assign({}, userActions),
mutations: Object.assign({}, userMutations)
}
알겠어요.원본 돌연변이 유형.jsexport const LOGIN = LOGIN
단, 올바른 변환 타입.js는export const LOGIN = 'LOGIN'
이 문제는 전화했을 때도 발생할 수 있습니다.$store.commit()
논거 없이
변환명은 CAP()로 시작하지만 실제 변환은 cap()이 아닌 RetrieveContractorSuccess: 'retrieveContractorSuccess'로 시작됩니다(이전에는 RetrieveContractorSuccess: 'RetrieveContractorSuccess').
언급URL : https://stackoverflow.com/questions/54984769/error-vuex-expects-string-as-the-type-but-found-undefined
반응형
'programing' 카테고리의 다른 글
Vuex(vuex-typex)에서 알 수 없는 작업 유형이 갑자기 느려짐 (0) | 2022.07.27 |
---|---|
Vue 단일 파일 구성 요소에서 이미지를 가져오고 사용하는 방법 (0) | 2022.07.27 |
vuejs2는 사용자가 @ 키를 눌렀는지 여부를 수신합니다. (0) | 2022.07.27 |
C의 동적 다차원 어레이를 사용하는 방법은 무엇입니까? (0) | 2022.07.27 |
Vue SPA - 브라우저에서 렌더링할 때 .vue 파일을 숨기는 방법 (0) | 2022.07.27 |