我正在尝试从nuxt-middleware向vuex存储发送多个API调用。我已经尝试过使用单个api,并且可以正常工作,但是如何访问多个API?
// middlewear/log.js
import axios from 'axios';
export default function ( {store} ) {
return axios.get(`http://my/api`)
.then((response) => {
console.log(response.data);
store.commit('add', response.data);
});
}
我尝试了以下方法,但没有成功。请任何人可以帮助我吗?
import axios from 'axios';
async asyncData( {store} ){
return axios.all([
axios.get('http://my/api'),
axios.get('http://my/api2')
]).then(axios.spread((first, second) => {
return {
store.commit('add', first.data);
store.commit('sub', second.data);
// posts: first.data,
// total: second.data
}
})).catch((err) => {
error({ statusCode: 404, message: err.message })
})
}
答案 0 :(得分:0)
嘿,在我看来,删除第二个退货单后,效果很好
import axios from 'axios';
async asyncData( {store} ){
return axios.all([
axios.get('http://my/api'),
axios.get('http://my/api2')
]).then(axios.spread((first, second) => {
store.commit('add', first.data);
store.commit('sub', second.data);
// posts: first.data,
// total: second.data
})).catch((err) => {
error({ statusCode: 404, message: err.message })
})
}