提问者:小点点

这是react中处理api请求的正确方式吗


我是新手,我想知道这是否是处理api请求的正确方式。

我有一个应用程序组件,这是我的父组件。 现在所做的就是呈现一个问题组件。

import React from 'react';
import IssueOverview from './IssueOverview'

class App extends React.Component {
  render(){
    return (
      <div>
        <IssueOverview />
      </div>
    )
  }
}

export default App;

在我的issue组件中,我执行对Github api的api调用,并将数据保存在State中。 这是正确的做法吗? 我可以对我的代码做些什么改进吗?

import React from 'react';

class IssueOverview extends React.Component {

    state = {
        loading: true,
        issues: []
    }

    async componentDidMount(){
        const endpoint = 'https://api.github.com/repos/facebook/create-react-app/issues';
        const response = await fetch(endpoint);
        const data = await response.json();
        this.setState({ issues: data, loading: false})
    }

  render(){
    return (
      <div>
        <h1>Issue Overview</h1>
      </div>
    )
  }
}

export default IssueOverview;

共2个答案

匿名用户

如果我的内存服务,等待不是很好地支持基于web的react应用程序。 我会建议你使用Axios:

https://www.npmjs.com/package/react-axios

一定要了解如何使用回调和setState回调。 这将简化你的生活很多!

匿名用户

我给你一个简短的答案。。。 是的。