我想在页面上使用vuex执行多个API调用。 这些调用使用相同的端点,但是使用API参数来过滤结果。 目的是在两个不同的列表中显示城市和国家。
const GET_DESTINATIONS = createAsyncMutation('GET_DESTINATIONS');
const mutations = {
[GET_DESTINATIONS.SUCCESS](state, info) {
state[GET_DESTINATIONS.loadingKey] = false;
state.list = info;
},
[GET_DESTINATIONS.PENDING](state) {
Vue.set(state, GET_DESTINATIONS.loadingKey, true);
},
};
const actions = {
getDestinations({ commit }, { type = 'COUNTRY' }) {
doAsync(this.$axios.get, commit, {
url: `/v1/destinations/?area_type=${type}`,
mutationTypes: GET_DESTINATIONS,
});
},
};
const state = () => ({
list: [],
});
问题是,如果我使用不同的过滤器执行两个API调用,结果将存储在商店的同一变量中...
如何在不重复逻辑的情况下处理这种情况?
使用vuex管理API调用真的是一个好主意吗?
先谢谢您