Laravel 5 错误类型错误:无法读取属性';调度';在app.js:12012中未定义的

Laravel 5 错误类型错误:无法读取属性';调度';在app.js:12012中未定义的,laravel-5,vuejs2,vue-component,vue-router,vuex,Laravel 5,Vuejs2,Vue Component,Vue Router,Vuex,您好,我一直在尝试学习vuejs和vuex,同时尝试从使用vuex概念的api调用中获取响应。我遇到以下错误。请帮助。 发生此错误 错误类型错误:无法读取未定义的属性“dispatch” app.js:12012 loginAction.js export const getUsersList = function (store) { let url = '/Apis/allUsers'; Vue.http.get(url).then((response) => {

您好,我一直在尝试学习vuejs和vuex,同时尝试从使用vuex概念的api调用中获取响应。我遇到以下错误。请帮助。 发生此错误
错误类型错误:无法读取未定义的属性“dispatch” app.js:12012

loginAction.js

export const getUsersList = function (store) {

    let url = '/Apis/allUsers';
    Vue.http.get(url).then((response) => {

            store.dispatch('GET_USER_RES', response.data);
        if (response.status == 200) {

        }
    }).catch((response) => {
        console.log('Error', response)
    })
}
loginStore.js

const state = {
    userResponse: []
}
const mutations = {
    GET_USER_RES (state, userResponse) {
        state.userResponse = userResponse;
    }
}
export default {
    state, mutations
}
login.vue

import {getUsersList} from './loginAction';
export default {

    created () {
        try{
            getUsersList();
        }catch(e){
            console.log(e);
        }
    },
    vuex: {
            getters: {
                getUsersList: state => state.userResponse
            },
            actions: {
                getUsersList
            }
    }
    }
    </ script>
从“/loginAction”导入{getUsersList};
导出默认值{
创建(){
试一试{
getUsersList();
}捕获(e){
控制台日志(e);
}
},
vuex:{
吸气剂:{
getUsersList:state=>state.userResponse
},
行动:{
getUsersList
}
}
}

如果手动调用操作(如在try/catch中),它们将不会将存储上下文作为第一个参数。我想您可以使用
getUsersList(this.store)
,但我会使用dispatch来访问您的所有操作。(我只是编辑了一点,以获得一个最小的运行示例,但我想你明白了!)

另外,使用
commit
来获取突变,而不是
dispatch
。即:

export const getUsersList = function ({commit}) {
    let url = '/Apis/allUsers';
    Vue.http.get(url).then((response) => {
        commit('GET_USER_RES', response.data); // because GET_USER_RES is a mutation
        ...

只是确认一下,还有一个actions对象吗?我无法想象你怎么会犯那样的错误<代码>导出默认值{state,mutations,actions}您好,您在login.vue中看到了脚本,我在那里编写了操作。谢谢你的回复嗨,我想我应该做更多的研究,然后回来,因为我还没有完全明白。我想做的是使用vue laravel创建一个登录并注册到一个集中式数据存储。谢谢你回答我的问题:)
export const getUsersList = function ({commit}) {
    let url = '/Apis/allUsers';
    Vue.http.get(url).then((response) => {
        commit('GET_USER_RES', response.data); // because GET_USER_RES is a mutation
        ...