title: Cannot pass multiple arguments in vuex actions
body: <p>I'm trying to call vuex action in vue component with multiple parameters. But in action method cannot access these passed arguments. </p>
  
  <p>I have already tried passing value in payload as object which is mostly suggested here. but still it is not working. </p>
  
  <p>Please look for </p>
  
  <pre><code>this.getMessageFromServer(payload); 
  </code></pre>
  
  <p>MessageBox.vue</p>
  
  <pre><code>import Vue from 'vue';
  import { mapGetters, mapActions } from 'vuex';
  import MessageView from './MessageView.vue';
  
  export default Vue.component('message-box',{
  
  components:{
      MessageView
  },
  
  data() {
  
      return {
          messageList :[],
      }
  },
  
  created() {
      this.fetchTimeMessage();
      console.log("reaching inside ");
  },
  
  watch: {
  
  },
  
  computed:{
      ...mapGetters(['getMessage','getActiveMessageData']),    
      ...mapActions(['getMessageFromServer']),
  },
  
  methods: {
  
  
      fetchTimeMessage:function(){
  
           console.log("fetchTimeMessage : ");
  
          var messageUser = this.getMessage.findIndex((e) =&gt; e.muid == this.getActiveMessageData.id);
           console.log("fetchTimeMessage : " , {messageUser});
  
            if (messageUser == -1) {
                  let user_id = this.getActiveMessageData.id;
                  let user_type = this.getActiveMessageData.type;
  
                  console.log("inside fetch Message : " + user_id);
                  console.log("inside fetch Message : " + user_type);
  
  
  
                  var payload = {
                      'uType': user_type,
                      'uid' : user_id,
                      'limit': 50
                  };
  
                 this.getMessageFromServer(payload);
  
  
          }
  
      },
  
  
  },
  
  
  
  });
  </code></pre>
  
  <p>Vuex modules message.js</p>
  
  <pre><code>
  const state = {
      messages:[],
      activeMessage : {}
  };
  
  const getters={
  
      getActiveUserId: (state) =&gt; {
              let activeUserId = "";
  
          if (!utils.isEmpty(state.activeMessage)) {
              activeUserId = state.activeMessage.id;
          }
  
          return activeUserId;
         },
  
         getActiveMessage:(state) =&gt; { return !utils.isEmpty(state.activeMessage);},
  
         getActiveMessageData : (state) =&gt; {return state.activeMessage } , 
  
         getMessage: (state) =&gt; {return state.messages},
  
  };
  
  const actions = {
  
  
      getMessageFromServer({ commit, state },{utype,uid,limit}){
  
          console.log("mesage callback asdas : " + uid);
          let messageRequest = CCManager.messageRequestBuilder(utype, uid, limit);
  
          messageRequest.fetchPrevious().then(messages =&gt; {
  
              //console.log("mesage callback : " + JSON.stringify(messages));
              // handle list of messages received
              let payload = {
                  'messsages':messages,
                  'id': uid
              };
              console.log("inside action_view : " + JSON.stringify(payload));
  
              //commit('updateMessageList',payload);
          })
      },
  
      setActiveMessages:function({commit},data){
          commit('updateActiveMessage',data);
      }, 
  };
  
  const mutations = {
  
  
      updateMessageList(state,{messages,id}){
  
          console.log("action details" + id);
  
  
                  //uid is not present
  
                  var tempObj = {
                      'muid' : id,
                      'message' : messages
                  }
  
                   state.messages.push(tempObj);
  
  
              } 
  
      },
  
      updateActiveMessage(state,action){
  
          state.activeMessage = {
              type: action.type,
              id:  action.uid
          };
      }
  
  
  
  };
  
  export default {
      state,
      getters,
      actions,
      mutations
  };
  
  </code></pre>