为了账号安全,请及时绑定邮箱和手机立即绑定

切换路由,上一个页面的定时器还在运行的问题

切换路由,上一个页面的定时器还在运行的问题

慕少森 2019-03-07 14:09:38
在主页点消息提示跳到Detail这个组件,初始化只能渲染Control过来的数据,在这里再点新的消息,就不会触发constructor了,所以我处理的nextProps的数据。如果第一道题时间还没结束,第二道题两个倒计时就都在运行,时间双倍速度的在减少。我把能想到地方都清除定时器了,还是有问题,求助啊
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

你在componentWillReceivePropscomponenetDidMount中都调用了init,却没有在init开头清除定时器。因此在url === nowurl的情况下,会再次创建定时器,而第一次创建的定时器(来自componentDidMount)没有被清除,因此造成了两个定时器同时运行的情况

查看完整回答
反对 回复 2019-03-25
?
湖上湖

TA贡献2003条经验 获得超2个赞

如果是组建的话,可以在页面销毁之前清除本页的定时器


查看完整回答
反对 回复 2019-03-25
  • 2 回答
  • 0 关注
  • 754 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信