У меня есть несколько страниц, которые я хочу получить, у меня это работает, но обратите внимание, что страница загружается немного медленнее, когда данных не много.
Как я могу установить свои API в хранилище vuex с помощью ax ios чтобы он работал лучше.
Магазин:
export default {
state: {
homepage: [],
aboutUs: []
},
actions: {
async loadPosts({ commit }) {
// Define urls pages
const urlHomepage = 'https://api.domain.com/homepage';
const urlaboutUs = 'https://api.domain.com/aboutUs';
// Responses pages
const responseHomepage = await this.$axios.get(urlHomepage);
const responseaboutUs = await this.$axios.get(urlaboutUs);
// variables pages
this.homepage = responseHomepage.data
this.aboutUs = responseaboutUs.data
// mutations pages
commit('SET_HOMEPAGE', this.homepage)
commit('SET_aboutUs', this.aboutUs)
}
},
mutations: {
SET_HOMEPAGE (state, homepage) {
state.homepage = homepage;
},
SET_aboutUs (state, aboutUs) {
state.aboutUs = aboutUs;
}
}
};
И я использую это на своей странице как:
import {mapState} from 'vuex';
export default {
name: 'Home',
mounted() {
this.$store.dispatch('loadPosts')
},
computed: {
...mapState([
'homepage'
])
}
}
Добавляя:
{{homepage}}
Есть ли лучший способ хранить несколько URL-адресов API? Я использую Nuxt. js.