(Vue.js + VUEX)Action内部提交承诺未运行

时间:2017-06-28 07:42:08

标签: vue.js vuex

我有一个返回promise的动作(所以我可以在我的Component上有一个加载状态)

由于某种原因,没有触发提交,在提交行之后没有任何内容运行,也没有错误

这是我的行动:

add({ commit }, data ) {
    return new Promise((resolve, reject) => {       
        axios.post('/spaces',data).then(
            response => {   
                commit('ADD_SPACE',response.data);  
                //this line only runs if put before the commit.
                resolve(response.data);
            },
            error => {                  
                reject(error);          
            }); 
    });
}

突变:

    ADD_SPACE (state, space) {
        state.spaces.push(space);         
    }

1 个答案:

答案 0 :(得分:0)

将操作更改为异步并拥有等待,而不是自己创建“新承诺”,解决了这个问题。现在实际执行了提交(即使第一个版本没有发出错误,如果我将提交的名称更改为无效的错误,也会发出错误)

limit()

如果有人对此解释,因为我完全不理解这个原因。