title: React - change input defaultValue by passing props
body: <p>Consider this example:</p>
  
  <pre><code>var Field = React.createClass({
      render: function () {
          // never renders new value...
          return (
              &lt;div&gt;
                  &lt;input type="text" defaultValue={this.props.value || ''} /&gt;
              &lt;/div&gt;
          );
      }
  });
  
  var App = React.createClass({
      getInitialState: function () {
          return {value: 'Hello!'};
      },
  
      changeTo: function (str) {
          this.setState({value: str});
      },
  
      render: function () {
          return (
              &lt;div&gt;
                  &lt;Field value={this.state.value} /&gt;
                  &lt;button onClick={this.changeTo.bind(null, 'Whyyyy?')}&gt;Change to "Whyyyy?"&lt;/button&gt;
                  &lt;button onClick={this.changeTo.bind(null, void 0)}&gt;Change to undefined&lt;/button&gt;
              &lt;/div&gt;
          );
      }
  });
  
  React.render(
      &lt;App /&gt;,
      document.getElementById('app')
  );
  </code></pre>
  
  <p>I want to pass value into <code>defaultValue</code> as prop of dumb input component. However it never re-renders it.</p>