this.$store.dispatch({type:'ADD_CONTACT'}, payload)
actions:{
addContact:
Вы и вправду считаете, будто ADD_CONTACT и addContact - это одно и то же?
И уж если при вызове действия (мутаций это тоже касается) используете объектный синтаксис - payload должен передаваться не отдельным параметром, а как часть первого:
this.$store.dispatch({
type: 'addContact',
payload,
});
actions: {
addContact: ({ commit }, { payload }) => commit('ADD_CONTACT', payload),
},
Ну и не очень понятно, зачем тут вообще нужно действие, никаких асинхронных операций не выполняете, можете сразу мутацию вызывать:
this.$store.commit('ADD_CONTACT', payload)
.