我目前正在使用以下服务器端渲染逻辑(使用 reactjs + nodejs +redux)第一次同步获取数据并将其设置为存储中的初始状态。
fetchInitialData.js
export function fetchInitialData(q,callback){
const url='http://....'
axios.get(url)
.then((response)=>{
callback((response.data));
}).catch((error)=> {
console.log(error)
})
}
我异步获取数据并加载输出以存储页面第一次使用回调加载的时间。
handleRender(req, res){
fetchInitialData(q,apiResult => {
const data=apiResult;
const results ={data,fetched:true,fetching:false,queryValue:q}
const store = configureStore(results, reduxRouterMiddleware);
....
const html = renderToString(component);
res.status(200);
res.send(html);
})
}
我需要在初始页面加载时进行 4 到 5 次 API 调用,因此考虑检查是否有一种简单的方法可以在页面加载时进行多次调用。
我是否需要链接 api 调用并手动合并来自不同 API 调用的响应并将其发送回以加载初始状态?
更新 1: 我正在考虑使用 axios.all 方法,有人可以告诉我这是否是一种理想的方法吗?