I'm still fairly new at React, but I've been grinding along slowly and I've encountered something I'm stuck on.
I am trying to build a "timer" component in React, and to be honest I don't know if I'm doing this right (or efficiently). In my code below, I set the state to return an object { currentCount: 10 } and have been toying with componentDidMount, componentWillUnmount, and render and I can only get the state to "count down" from 10 to 9. 
Two-part question: What am I getting wrong? And, is there a more efficient way of going about using setTimeout (rather than using componentDidMount & componentWillUnmount)?
Thank you in advance.
import React from 'react';
var Clock = React.createClass({
  getInitialState: function() {
    return { currentCount: 10 };
  },
  componentDidMount: function() {
    this.countdown = setInterval(this.timer, 1000);
  },
  componentWillUnmount: function() {
    clearInterval(this.countdown);
  },
  timer: function() {
    this.setState({ currentCount: 10 });
  },
  render: function() {
    var displayCount = this.state.currentCount--;
    return (
      <section>
        {displayCount}
      </section>
    );
  }
});
module.exports = Clock;
 
     
     
     
     
     
     
     
     
     
     
    