The useEffect() hook is part of the latest version of React (16.8). Since this hook triggers a function when the component is rendered, it is perfect for fetching data from an external API. Check out this example:

import React, { useState, useEffect } from 'react';
import ReactDOM from 'react-dom';
import axios from 'axios';

function App() {
  // Store the users in a state variable.
  // We are passing an empty array as the default value.
  let [users, setUsers] = useState([]);

  // The useEffect() hook fires any time that the component is rendered.
  // An empty array is passed as the second argument so that the effect only fires once.
  useEffect(() => {
      .then(response => setUsers(;
  }, []);

  return (
    <div className="App">
      <h2>The JSON below is loaded from an external API!</h2>

Edit useEffect()-axios