import api from '../../utils/api' const state = { all: [], loaded: false, } const getters = { allMedia: state => state.all, allMediaLoaded: state => state.loaded, } const actions = { async getMediaById({ commit }, ids) { commit('CLEAR_MEDIA') commit('MEDIA_LOADED', false) const p = ids.map(async id => { return await api.getSingleMedia(id, media => { commit('STORE_FETCHED_MEDIA', { media }) }) }) console.log(p) await Promise.all(p) commit('MEDIA_LOADED', true) } } const mutations = { STORE_FETCHED_MEDIA(state, { media }) { state.all.push() }, CLEAR_MEDIA(state) { state.all = [] }, MEDIA_LOADED(state, val) { state.loaded = val }, } export default { state, getters, actions, mutations }