React
by Fabio Dan
HTML
<div id="app"></div>
React
class Timer extends React.Component {
constructor(props) {
super(props)
this.state = { seconds: 0 }
}
tick() {
this.setState((state, props) => ({
seconds: state.seconds + 1
}))
}
componentDidMount() {
this.interval = setInterval(() => this.tick(), 1000)
}
componentWillUnmount() {
clearInterval(this.interval)
}
render() {
return <div>Seconds: { this.state.seconds }</div>
}
}
ReactDOM.render(<Timer />, document.getElementById("app"))