gpt4 book ai didi

javascript - 如何在javascript中同时运行到if语句?

转载 作者:行者123 更新时间:2023-12-04 14:58:22 25 4
gpt4 key购买 nike

我正在开发一个员工登录系统,计算员工登录的总时间,包括休息时间等,所以我有两个组件 1. 一直计算时间,直到员工登录 2. 计算总时间休息。所以在这种情况下,我不希望登录时间在打断时停止,而是我希望中断和登录时间应该一起运行

const [isLoggedIn, setLoggedIn] = useState(true)
const [isBreakPunched, setBreakPunch] = useState(true)
const [breakTime, setBreakTime] = useState(0);
const [loginTime, setLoginTime] = useState(0);

useEffect(() => {
if (isLoggedIn) {
const interval = setInterval(() => {
setLoginTime(onlineTime + 1);
}, 1000);
return () => clearInterval(interval);
}
if (isBreakPunched){
const interval = setInterval(() =>{
setBreakTime(auxTime +1);
},1000);
return ()=> clearInterval(interval);
}
});

当它运行时,loginTime 只是在运行,因为第一个条件确实是登录时间所以要运行 breakTime 我必须停止 loginTime。此代码将两者都视为 if..else.. 循环

我的问题是,当任何人的条件为 true 时,我想同时运行它们,它们应该相互独立

最佳答案

setInterval( () => {
if (isLoggedIn) {
setLoginTime(onlineTime + 1);
}
if (isBreakPunched) {
setBreakTime(auxTime +1);
}
}, 1000);

此间隔检查是否有人登录以设置登录时间,如果他们在休息则设置休息时间。顺便说一句,您希望根据彼此的情况设置登录时间和中断时间,同时彼此“独立”,这是没有意义的。

关于javascript - 如何在javascript中同时运行到if语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67452330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com