title: Prop is marked as required in component, but its value is `undefined`
body: <p>single.js : </p>
  
  <pre><code>import React, { Component } from 'react';
  import Details from '../components/details'
  import { ProgressBar } from 'react-materialize';
  import { Route, Link } from 'react-router-dom';
  
  const Test = () =&gt; (
    &lt;div&gt; RENDER PAGE 1&lt;/div&gt;
  )
  
  class SinglePage extends Component {
  
    constructor(props) {
      super(props);
  
      this.state = {
        data: null,
      }
    }
  
      componentDidMount() {
          fetch('http://localhost:1337/1')
        .then((res) =&gt; res.json())
        .then((json) =&gt; {
          this.setState({
            data: json,
          });
        });
      }
  
    render() {
  
      const { data } = this.state;
  
      return (
  
        &lt;div&gt;
  
          &lt;h2&gt; SinglePage &lt;/h2&gt;
  
          {!data ? (
            &lt;ProgressBar /&gt;
          ) : (
            &lt;div&gt;
              &lt;Details data={data} /&gt;
            &lt;/div&gt;
          )}
        &lt;/div&gt;
      );
    }
  
  }
  
  export default SinglePage;
  </code></pre>
  
  <p>details.js : </p>
  
  <pre><code>import React, { Component } from 'react';
  import PropTypes from 'prop-types';
  
  class Details extends Component {
  
    static propTypes = {
      item: PropTypes.shape({
        date: PropTypes.string.isRequired,
      }).isRequired,
    }
  
  
      render() {
          const { item } = this.props;
  
          return (
              &lt;div&gt;
                  &lt;p&gt; {item.date} &lt;/p&gt;
              &lt;/div&gt;
          )
      }
  }
  
  export default Details;
  </code></pre>
  
  <p>In console, I am getting an error : Warning: Failed prop type: The prop <code>item</code> is marked as required in <code>Details</code>, but its value is <code>undefined</code>.</p>
  
  <p>From this I though my json was not catched but I have an other component which fetch on <a href="http://localhost:1337/" rel="noreferrer">http://localhost:1337/</a> , get datas and display them correctly, and going to <a href="http://localhost:1337/1" rel="noreferrer">http://localhost:1337/1</a> send me a json response so I'm quite confused here.</p>
  
  <p>Additional screenshot : <a href="https://i.stack.imgur.com/WUvIy.png" rel="noreferrer"><img src="https://i.stack.imgur.com/WUvIy.png" alt="enter image description here"></a></p>