Я создаю приложение чата в Laravel 6 + Vue + Vuex . Я хочу позвонить в vuex store и получить состояние после завершения действий по отправке, а затем я хочу выполнить некоторую обработку этого состояния в моем vue компоненте.
In ChatWindow компонент
mounted: function () {
this.$store.dispatch('setContacts').then(() => {
console.log('dispatch called')
// I want to call the getter here and set one of the data property
});
}
действие. js
setContacts: (context) => {
axios.post('/users').then(response => {
let users = response.data;
// consoled for testing
console.log(users);
context.commit('setContacts', users);
});
}
мутаторы. js
setContacts: (state, users) => {
state.contacts = users;
},
Пожалуйста, смотрите скриншот ниже. , затем метод отправки работает до setContacts в действии. js.
Мне нужно вызвать getter после завершения действия dispatch . (который будет эффективно устанавливать состояние контактов). Затем я хочу получить контакты через getContacts геттер вот так.
геттеры. js
getContacts: (state) => {
return state.contacts;
}
Я также попытался позвонить вычисленное свойство в затем в смонтировано , и оно не сработало. Кроме того, не следует ли «отправлять вызов» при подключенном запуске после console.log setContacts в действии . js в том виде, как в этом методе? Спасибо!