我在componentDidMount中使用setInterval,间隔为1000毫秒,这意味着根据用户点击提交按钮输入倒计时的时间,倒计时的第一秒可能需要1毫秒到1000毫秒。以下是有问题的代码:
minusOne() {
if(this.state.time > 0){
this.setState({time: this.state.time -1});
}
}
componentDidMount(){
setInterval(() => this.minusOne(), 1000);
}
关于如何获得第一秒的任何想法总是需要1000毫秒?感谢
答案 0 :(得分:0)
只需按下按钮而不是componentDidMount
启动间隔。
onSubmit() {
...
// remove any previous interval (noop for undefined handle)
clearInterval(this.state.countdownIntervalHandle);
this.setState({countdownIntervalHandle: setInterval(...)});
}
如有必要,请勿忘记将clearInterval
添加到componentWillUnmount
。
答案 1 :(得分:0)
使用setTimeout强制倒计时1000毫秒。
recover()
wonkledge