Javascript 从组件安装开始的反应计数时间
在React/Javascript中,如何从安装组件开始计算时间?我希望在页面上停留的时间至少为0.8秒所以当组件装载时,我希望启动一个计时器,它计算0,8秒是否已经过去。当我即将离开页面时,我想检查时间是否已经过去,如果没有,请等待剩余时间,然后离开页面。我如何才能完成此操作?React有多个生命周期事件,其中一个是Javascript 从组件安装开始的反应计数时间,javascript,reactjs,react-native,Javascript,Reactjs,React Native,在React/Javascript中,如何从安装组件开始计算时间?我希望在页面上停留的时间至少为0.8秒所以当组件装载时,我希望启动一个计时器,它计算0,8秒是否已经过去。当我即将离开页面时,我想检查时间是否已经过去,如果没有,请等待剩余时间,然后离开页面。我如何才能完成此操作?React有多个生命周期事件,其中一个是 componentDidMount()在创建组件后立即调用 安装。需要DOM节点的初始化应该在这里进行。如果你 需要从远程端点加载数据,这是一个好地方 实例化网络请求。此方法中的
componentDidMount()
在创建组件后立即调用
安装。需要DOM节点的初始化应该在这里进行。如果你
需要从远程端点加载数据,这是一个好地方
实例化网络请求。此方法中的设置状态将
触发重新渲染
示例
componentDidMount() {
this.mountTime = (new Date).getTime();
}
onSomeActionThatTriggersUnmount() {
const currentTime = (new Date).getTime();
if(currentTime >= (this.mountTime + 800)) {
// proceed with the unmount
} else {
// not enough time yet
}
}
我对计数部分更感兴趣。我本来打算用componentDidMount做的。“我肯定有一些很好的解决方法来解决计数问题。”VillemiekOja用一个例子更新了答案,但我必须说,800毫秒真的很快。