重复执行ReactJs重置间隔计时器

时间:2019-10-23 12:59:30

标签: javascript reactjs

我为login编写了一个组件,您可以输入电话号码,然后获取otp代码,可以更正您的电话号码,还可以在30秒后重新发送代码。一切几乎都可以正常工作,除非您单击正确的按钮,计时器将进入快速间隔,您可以按正确的按钮两次或三下,您会看到时间运行得如此之快。我在重新发送按钮上遇到了这个问题,但是我通过以下方式解决了:

this.state.resendTimer = this.timerInterval();

JSFiddle

要查看此问题,1.输入一个假电话号码,2.单击正确,3.再次输入一个假电话,单击按钮。重复这些两次或三次,您会看到计时器运行得如此之快!但是我想将计时器重置为30每秒正常退出。

1 个答案:

答案 0 :(得分:4)

您需要清除间隔,然后才能重新开始。

检查一下...

delete

并清除间隔:

update

JSFiddle