Search code examples
vue.jsvuex

How to call an action from within another action in Vuex?


I have the following setup for my actions:

get1: ({commit}) => {
  //things
  this.get2(); //this is my question!
},
get2: ({commit}) => {
  //things
},

I want to be able to call one action from within another, so in this example I want to be able to call get2() from within get1(). Is this possible, and if so, how can I do it?


Solution

  • You have access to the dispatch method in the object passed in the first parameter:

    get1: ({ commit, dispatch }) => {
      dispatch('get2');
    },
    

    This is covered in the documentation.