약관동의 체크박스를 만들자

null·2021년 10월 3일
0
//index.tsx
  <input type="checkbox" checked={checkedArr[key]} onChange={onChangeToCheck.bind(null, key)}/>

//hook.ts
const  [checkedArr, setCheckedArr] = useState([false,false,false,false])

//idx는 number.. boolean이면 안된다 
  function onChangeToCheck(idx: number | null , e: ChangeEvent<HTMLInputElement>) {
    if (idx !== null) {
      return setCheckedArr(prev => {
        let temp = [...prev];
        temp[idx] = !temp[idx];
        return temp;
      });
    }
    // 실수: 만약 위에서 return을 안썼다면 else 
    setChecked(prev => !prev);
  }
profile
개발이 싫어.

0개의 댓글