繁体   English   中英

异步/等待功能不会等待console.log它的响应

[英]Async/Await func doesn't wait to console.log it's response

我正在尝试制作一个异步函数并将其响应保存到变量,然后console.log该变量,但是在异步函数完成之前是console.logging响应。

import axios from 'axios';

async function getItems() {
  const response = await axios.get(SOME_URL);
  console.log('done', response);
  return response;
}

const items = getItems();
console.log('items: ', items);

我希望日志看起来像这样:

// Expected result
done: {...result...}
items: {...items...}

但是我实际上得到的是:

// ACTUAL result
items: Promise {<pending>}
done: {...result...}

我想等到请求完成getItems继续调用getItems

我想念什么?

由于“ getItems ”是异步调用,因此您将在“ .then”中获得结果,如下所示

import axios from 'axios';

async function getItems() {
  const response = await axios.get(SOME_URL);
  console.log('done', response);
  return response;
}

getItems().then(items => console.log('items: ', items))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM