下边我简单的写一下想法
function demo(){
let data=[];
fetch(xxx).then((res)=>{
data.push(res);
})
return data;
}
由于是异步请求,所以return的data依然是空数组,而非包含请求数据的数组。那有什么办法在获取数据后再return出去呢?
过去多啦不再A梦2017-05-19 10:22:15
使用async/await方式
async function demo(){
let data=[];
await fetch(xxx).then((res)=>{
data.push(res);
})
return data;
}
然后执行该函数
黄舟2017-05-19 10:22:15
用await,注意需要构建
async function demo(){
const response = await fetch(url, options);
// todo: 异常处理
const data = await response.json();
return data;
}
参考es6 await