client/src/components/Clock.js
changeset 28 abf9f3ff2635
parent 21 284e866f55c7
child 143 cfcbf4bc66f1
equal deleted inserted replaced
27:6161392ca928 28:abf9f3ff2635
     4 
     4 
     5 class Clock extends Component {
     5 class Clock extends Component {
     6 
     6 
     7   state = {
     7   state = {
     8     time: moment().format('H:mm:ss'),
     8     time: moment().format('H:mm:ss'),
       
     9     intervalID: null
     9   }
    10   }
    10 
    11 
    11   componentDidMount() {
    12   componentDidMount() {
    12     setInterval(() => {
    13     const intervalID = setInterval(() => {
    13       const time = moment().format('H:mm:ss');
    14       const time = moment().format('H:mm:ss');
    14       this.setState({ time });
    15       this.setState({ time });
    15     }, 1000);
    16     }, 1000);
       
    17 
       
    18     this.setState({ intervalID });
       
    19   }
       
    20 
       
    21   componentWillUnmount() {
       
    22     clearInterval(this.state.intervalID);
    16   }
    23   }
    17 
    24 
    18   render() {
    25   render() {
    19     return (
    26     return (
    20       <Label bsStyle="info">{ this.state.time }</Label>
    27       <Label bsStyle="info">{ this.state.time }</Label>