如何在状态下使用Fetch请求中的数据?

时间:2019-03-27 15:37:29

标签: javascript reactjs api

我正在尝试访问API,并以图形形式显示数据。我遵循了有关使用Fetch的教程;例如这个: (https://appdividend.com/2018/08/20/javascript-fetch-api-example-tutorial/

fetch('https://api.github.com/users/KrunalLathiya')
.then(res => res.json())
.then(json => console.log(json));

很可爱,它获取数据并将其记录到控制台中。但是据我所知,数据无法从外部获得,如何使console.log(json)内部显示的数据进入状态,然后再将其显示在图形中?

2 个答案:

答案 0 :(得分:2)

将响应分配给变量,然后使用如下数据调用setState

已使用ASYNC更新

const response = await fetch('https://api.github.com/users/KrunalLathiya')
.then(res => res.json());

this.setState({
    data: response
});

然后,您可以在图形的渲染中使用this.state.data访问您的响应。

答案 1 :(得分:0)

Katia Wheeler是正确的。如果您只想呆在Promise上。然后在第二个then内部,您可以使用console.log。{p}

this.setState

然后您将其置于组件状态,并且可以从那里正常使用它。