実戦計画-5
3500 ワード
setInterval
// WorkOut.js
useEffect(() => {
// if 문 안에 있는 interval 들을 밖에서 호출해서 연결시켜줌.
let interval = null;
if (!timeStop) {
interval = setInterval(() => {
setTime((prevTime) => prevTime + 1);
}, 1000);
} else {
clearInterval(interval);
}
return () => {
clearInterval(interval);
};
}, [timeStop]);
運動時に使うストップウォッチを実現しました.1秒ごとにsetIntervalを使用して前回time+1を行います.
ポイントはいつこのストップウォッチを停止するか、つまりいつclearIntervalを停止するかです.
一時停止ボタンを押すだけでなく、ストップウォッチを開いて出て行った場合、どのように計時すればいいのでしょうか?
一般的なストップウォッチはページから離れても持続時間がかかりますが、「トレーニング」ページではその機能を実施する必要は感じられません.運動中に他のページの機能を使う理由がないので...
また、ページから飛び出した場合、タイマーをいつ閉じるか、メモリの使用をどのように制御するかなどの問題が考えられます.
過剰工事とされ、USEffectを利用してreturnにclearIntervalを加えた.
progress bar
setIntervalを使用した部分もあり、休憩時間を自動的に流れ、休憩バーを満たすことができます.ここでまたclearIntervalの方法を追加し、休憩時間がsetInterval時間と同じであれば停止すべきです.このようにしてこそ、インデックスは次のグループに自動的に移動します.
Reference
この問題について(実戦計画-5), 我々は、より多くの情報をここで見つけました https://velog.io/@uvula6921/실전-프로젝트-4テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol