From 952f06f22015afe77cf0f82728ff01de36b9e60a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EB=8B=A4=EC=9D=B8=20=EA=B9=80?= <plobera92@ajou.ac.kr> Date: Sun, 8 Dec 2024 01:10:23 +0900 Subject: [PATCH] =?UTF-8?q?Fix=20:=20level=20button=20toggle=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/workout/VideoSelection.jsx | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/front/src/components/workout/VideoSelection.jsx b/front/src/components/workout/VideoSelection.jsx index a9fed6a..5af1e1c 100644 --- a/front/src/components/workout/VideoSelection.jsx +++ b/front/src/components/workout/VideoSelection.jsx @@ -9,7 +9,8 @@ function VideoSelection({dispatch, setSelected}){ const [endMin, setEndMin] = useState(0); const [startSec, setStartSec] = useState(0); const [endSec, setSEndSec] = useState(0); - + const [currentLevel, setCurrentLevel] = useState(null); + const tagRef = useRef([]); useEffect(() => { @@ -47,10 +48,15 @@ function VideoSelection({dispatch, setSelected}){ }); } function handleLevel(e){ - dispatch({ - type: 'level', - level: e.target.value, - }) + if(currentLevel === e.target.value){ + setCurrentLevel(null); + } else { + setCurrentLevel(e.target.value); + dispatch({ + type: 'level', + level: e.target.value, + }); + } } function handleChange(e){ if (e.target.name === 'startMin') setStartMin(e.target.value?e.target.value:0); @@ -61,7 +67,7 @@ function VideoSelection({dispatch, setSelected}){ <div className='col padding'> <h3>난이도</h3> <label>상 - <input type="radio" value="advanced" name="level" onChange={handleLevel}></input> + <input type="radio" value="advanced" name="level" onChange={handleLevel} checked={currentLevel === 'advanced'} ></input> </label> <label>하 <input type="radio" value="beginner" name="level" onChange={handleLevel}></input> @@ -77,7 +83,7 @@ function VideoSelection({dispatch, setSelected}){ setStartMin(value === "" ? null : parseInt(value, 10)); }}></input> */} <span> 분</span> - <input type="text" name="start" onChange={(e) => setStartSec(parseInt(e.target.value))}></input> + <input type="text" name="start" onChange={(e) => setStartSec(parseInt(e.target.value))} checked={currentLevel === 'beginner'} ></input> <span> 초</span> </span> <span> ~ -- GitLab