Realizar debounce en React.js

¿Cómo se realiza el rebote en React.js?

Quiero renunciar al handleOnChange.

Lo intenté condebounce(this.handleOnChange, 200) Pero no funciona.

function debounce(fn, delay) {
  var timer = null;
  return function () {
    var context = this, args = arguments;
    clearTimeout(timer);
    timer = setTimeout(function () {
      fn.apply(context, args);
    }, delay);
  };
}
var SearchBox = React.createClass({

    render:function () {
    return (
    <input  type="search" name="p"
       onChange={this.handleOnChange}/>
    );
    },
    handleOnChange: function (event) {
       //make ajax call
    }
});

Respuestas a la pregunta(20)

Su respuesta a la pregunta