cancelOrder
函数运行并关闭窗口?
const cancelOrder = async () => {
if (isAcceptedRef.current === false) {
await changeAnswerStatus(answer.id, 0);
onCancel();
}
};
useEffect(() => {
if (time > 0) {
const timer = setTimeout(() => setTime(time - 0.1), 100);
return () => {
clearTimeout(timer);
};
} else {
setHidden(true);
}
}, [time]);
if (loading) {
return "Loading...";
}
if (hidden) {
return null;
}
return (
<li
className={cx(
"bg-paper rounded-xl flex flex-col p-2.5 space-y-1.5 shadow-history",
answer.isNavigatorMode && "ring ring-red",
)}
>
<div>
<span
className="rounded-full transition-all h-1 bg-blue block"
style={{
width: `calc(100% / 15 * ${time})`,
}}
/>
</div>
</li>
);
<= 0:
useEffect(() => {
if (time > 0) {
const timer = setTimeout(() => setTime(time - 0.1), 100);
return () => {
clearTimeout(timer);
};
} else {
cancelOrder();
setHidden(true);
}
}, [time]);