title: Unable to get property 'setState' of undefined or null reference
body: <p>I'm trying to add some filtering to an app but my change handler does not appear to have a reference to 'this'? Any idea what I'm doing wrong here?</p>
  
  <pre><code>class ShipmentList extends Component {
      constructor(props) {
          super(props)
          this.state = {
              shipments: [],
              searchString: '',
              loading: false
          }
      }
  
      handleChange(e){
      this.setState( {searchString:e.target.value} )   // &lt;- This is where the error happens  
      }
  
      componentDidMount() {
          this.setState({loading: true})
          fetch('/shipments-server.json')
          .then(response =&gt; response.json())
          .then(shipments =&gt; this.setState({
              shipments,
              loading: false
          }))
  
      render() {
      const { shipments, loading, searchString } = this.state
      var shipmentData = shipments
      var filter = this.state.searchString
  
      if( filter.length &gt; 0 ) {
          shipmentData = shipmentData.filter(s =&gt; {
              return s.carrierName.toLowerCase().match( filter.trim().toLowerCase() )
          });
      }
  
  
      return (
          &lt;div className="shipment-list"&gt;
              &lt;ul className="filters"&gt;
                  &lt;li&gt;&lt;input value={this.state.searchString} onChange={this.handleChange} placeholder="Filter by Carrier" type="text" /&gt;&lt;/li&gt;
  </code></pre>
  
  <p>My data loads fine from the JSON file but when I type into the input textbox and the handleChange() method is called I see the error 'Unable to get property 'setState' of undefined or null reference'. When I set a breakpoint in the compiled code, I can see that 'this' is undefined within the scope of the handleChange() method but I have no idea why. Any help would be appreciated.</p>