鲜荣彬
Herry

  Vuex 中 使用 Action 处理异步请求时,常规写法如下:

   getMenuAction:(context) =>{
            context.commit('SET_MENU_LIST',['承保2','核保2'])
        }
    }

  我们也可以使用如下简化写法,如下:

   actions:{
        getMenuAction:({commit}) =>{
            commit('SET_MENU_LIST',['承保2','核保2'])
        }
    }

  这是一种怎么的写法呢?

  其实这是 ES6 中一种被称为  变量解构赋值  新的语法知识,可参考我的另外一篇文章  变量解构赋值。

     我们可以看看  Vuex 中 注册 Action的源码如下:

  

  

  常规写法中的 context = {   dispatch: local.dispatch,
                     commit: local.commit,
                getters: local.getters,
                state: local.state,
                rootGetters: store.getters,
                rootState: store.state                         }

 

  使用 变量解构赋值后 { commit } 的 commit= context.commit 了。

  

posted on 2017-12-13 16:10  Herry彬  阅读(15384)  评论(0编辑  收藏  举报