fix: 动画阶段禁止点击

This commit is contained in:
streakingman 2022-09-16 11:27:06 +08:00
parent 2c113785fd
commit 0efb987e0d

View File

@ -142,6 +142,7 @@ const App: FC = () => {
>({}); >({});
const [finished, setFinished] = useState<boolean>(false); const [finished, setFinished] = useState<boolean>(false);
const [tipText, setTipText] = useState<string>(''); const [tipText, setTipText] = useState<string>('');
const [animating, setAnimating] = useState<boolean>(false);
// 队列区排序 // 队列区排序
useEffect(() => { useEffect(() => {
@ -262,7 +263,7 @@ const App: FC = () => {
// 点击item // 点击item
const clickSymbol = async (idx: number) => { const clickSymbol = async (idx: number) => {
if (finished) return; if (finished || animating) return;
const updateScene = scene.slice(); const updateScene = scene.slice();
const symbol = updateScene[idx]; const symbol = updateScene[idx];
if (symbol.isCover || symbol.status !== 0) return; if (symbol.isCover || symbol.status !== 0) return;
@ -274,6 +275,7 @@ const App: FC = () => {
setQueue(updateQueue); setQueue(updateQueue);
checkCover(updateScene); checkCover(updateScene);
setAnimating(true);
await waitTimeout(300); await waitTimeout(300);
const filterSame = updateQueue.filter((sb) => sb.icon === symbol.icon); const filterSame = updateQueue.filter((sb) => sb.icon === symbol.icon);
@ -308,6 +310,8 @@ const App: FC = () => {
setQueue(updateQueue); setQueue(updateQueue);
checkCover(updateScene); checkCover(updateScene);
} }
setAnimating(false);
}; };
return ( return (