title: ReactJS: setTimeout() not working?
body: <p>Having this code in mind: </p>
  
  <pre><code>var Component = React.createClass({
  
      getInitialState: function () {
          return {position: 0};    
      },
  
      componentDidMount: function () {
          setTimeout(this.setState({position: 1}), 3000);
      },
  
      render: function () {
           return (
              &lt;div className="component"&gt;
                  {this.state.position}
              &lt;/div&gt;
           ); 
      }
  
  });
  
  ReactDOM.render(
      &lt;Component /&gt;,
      document.getElementById('main')
  );
  </code></pre>
  
  <p>Isn't the state supposed to change only after 3 seconds? It's changing immediately. </p>
  
  <p>My main goal here is to change the state every 3 seconds (with <code>setInterval()</code>), but since it was not working, I tried <code>setTimeout()</code>, which is not working either. Any lights on this? Thanks!</p>