У меня проблема с тем, что моя конечная точка API вызывается дважды, но ТОЛЬКО когда я устанавливаю состояние в мутации. Вызовы конечной точки API работают как обычно (вызывается только один раз), если состояние не изменилось.
Есть идеи? Все примеры кода и учебники, которые я нахожу, делают то, что я делаю, но что-то явно не так.
Заранее спасибо, код ниже.
Вызов действие от компонента
fetchCalendar() {
const calendarApi = this.$refs.fullCalendar.getApi();
const calendarDate = calendarApi.getDate();
const data = {
startDate: this.$moment(calendarDate).startOf("day"),
endDate: this.$moment(calendarDate).endOf("day")
};
// CALL THE ACTION
this.$store.dispatch(FETCH_CALENDAR, data);
},
Вызов API и передача данных в мутацию
[FETCH_CALENDAR]({ commit }, data) {
CalendarApi.fetch(data)
.then((response) => {
const resources = response.staff.map(jsonToCalendarResource);
const events = [];
response.appointments.forEach(appointment => {
appointment.events.forEach(event => {
events.push(jsonToCalendarEvent(event, appointment));
});
});
// CALL THE MUTATIONS
commit(SET_RESOURCES, resources);
commit(SET_EVENTS, events);
})
},
Мутация, при которой возникает проблема происходит
[SET_EVENTS](state, events) {
// If I comment this line, it works as per normal
state.events = events;
},
[SET_RESOURCES](state, resources) {
// Same here, if this is commented (along with the above) it works as normal
state.resources = resources;
},