react实现取当前时刻每五分钟粒度实现五分钟倒计时效果
时间: 2023-07-20 08:03:55 浏览: 148
我们可以使用 `setInterval` 函数来每五分钟更新一次倒计时。具体实现如下:
1. 首先需要引入 `react` 和 `react-dom` 库:
```
import React from 'react';
import ReactDOM from 'react-dom';
```
2. 定义一个组件 `Countdown`,它的状态包括倒计时的时间和倒计时是否结束:
```
class Countdown extends React.Component {
constructor(props) {
super(props);
this.state = {
time: this.props.time,
isDone: false
};
}
render() {
return (
<div>
{
this.state.isDone ?
<div>倒计时结束</div> :
<div>剩余时间:{this.state.time} 秒</div>
}
</div>
);
}
}
```
3. 在 `Countdown` 组件的 `componentDidMount` 生命周期中设置定时器,每五分钟更新一次倒计时:
```
componentDidMount() {
this.interval = setInterval(() => {
const time = this.state.time - 300;
if (time <= 0) {
clearInterval(this.interval);
this.setState({ isDone: true });
} else {
this.setState({ time });
}
}, 300000);
}
componentWillUnmount() {
clearInterval(this.interval);
}
```
4. 最后在页面中使用 `Countdown` 组件,并传入倒计时的初始时间:
```
ReactDOM.render(
<Countdown time={600} />,
document.getElementById('root')
);
```
这样,每五分钟就会更新一次倒计时,直到倒计时结束。
阅读全文