下边我简单的写一下想法
function demo(){
let data=[]; fetch(xxx).then((res)=>{ data.push(res); }) return data;
}
由于是异步请求,所以return的data依然是空数组,而非包含请求数据的数组。那有什么办法在获取数据后再return出去呢?
认证0级讲师
异步是不可能return值出去的
值只能在回调函数中处理
雷雷
使用async/await方式
async function demo(){ let data=[]; await fetch(xxx).then((res)=>{ data.push(res); }) return data; }
然后执行该函数
用await,注意需要构建
async function demo(){ const response = await fetch(url, options); // todo: 异常处理 const data = await response.json(); return data; }
参考es6 await
异步是不可能return值出去的
值只能在回调函数中处理
雷雷
使用async/await方式
然后执行该函数
用await,注意需要构建
参考es6 await