我有一个我正在创建的测验应用程序,我有一个问题组件。每次问题组件呈现时,我想启动60秒计时器。如果用户没有回答或离开应用程序,60秒后我想将它们重定向到主页,下一个用户可以从头开始测验。
我还有另一个关于componentWillMount()
功能的问题。我有同样的问题组件有6个不同的实例或('问题'),如你所说。当我从问题1转到问题2时,componentWillMount()
函数不会重新启动。它仅在该组件的第一个渲染时触发,即使它们是不同的实例。我需要确保计时器在每个组件渲染时重新启动。
这样做的最佳方式是什么?最好使用props.history.push('/')
。
componentWillMount(){
setTimeout(() => {
console.log('this ran')
this.props.history.push('/');
}, 60000)
}