You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
485 B
30 lines
485 B
class Timer extends React.Component {
|
|
constructor(props) {
|
|
super(props);
|
|
this.state = { seconds: 0 };
|
|
}
|
|
|
|
tick() {
|
|
this.setState(state => ({
|
|
seconds: state.seconds + 1
|
|
}));
|
|
}
|
|
|
|
componentDidMount() {
|
|
this.interval = setInterval(() => this.tick(), 1000);
|
|
}
|
|
|
|
componentWillUnmount() {
|
|
clearInterval(this.interval);
|
|
}
|
|
|
|
render() {
|
|
return (
|
|
<div>
|
|
Seconds: {this.state.seconds}
|
|
</div>
|
|
);
|
|
}
|
|
}
|
|
|
|
root.render(<Timer />);
|
|
|