【发布时间】:2019-03-07 08:59:45
【问题描述】:
我的 src/store/modules/authToken.js 文件是这样的:
const authToken = {
state: {
token: localStorage.getItem('user-token') || '',
status: '',
},
mutations: {
authSuccess(state, token) {
console.log('hellllo')
state.token = token
state.status = 'success'
},
authFail(state) {
state.status = 'error'
}
},
getters: {
isAuthenticated: state => {
return !!state.token
},
authStatus: state => {
return state.status
}
}
}
我的 src/store/store.js 文件是这样的:
import Vue from 'vue'
import Vuex from 'vuex'
import authToken from './modules/authtoken'
Vue.use(Vuex)
Vue.config.devtools = true
export const store = new Vuex.Store({
modules: {
authToken
}
})
在我的 main.js 文件中,我使用的商店如下:
import { store } from './store/store'
new Vue({
render: h => h(App),
store,
router,
}).$mount('#app')
现在,当我尝试访问组件文件中的 autoken 模块时,我无法访问它。我正在这样做。$store.state.authToken.getters.isAuthenticated
但是当我尝试使用它时出现以下错误。
挂载钩子中的错误:“TypeError:无法读取属性 'isAuthenticated' of undefined"
【问题讨论】:
标签: javascript vue.js frontend vuex