수정 기능을 구현하려면 데이터를 Form에 가져와서 수정 후 다시 반환되어야 한다.
<input>
태그와 <select>
태그에서 수정하기 위해 사용되는 속성을 알아보자.
💡수정 처리
REST API를 호출하여, method : "PUT" 이용
<input>
태그텍스트 수정은 <input>
태그에 defaultValue={}
에 담아 불러올 수 있었다.
<input type="text" defaultValue={profile.name} ref={nameRef} />
<select>
태그<select>
태그는 속성 defaultValue
, value
로 사용했을 때 적용되지 않아서
if문으로 구분하여 <option>
태그에 selected
를 추가했다.
<select ref={careerRef}>
{
experience.map((career)=>{
if(profile.career == career.career){
return (
<option key={career.id} value={career.career} selected>
{career.career} 년차
</option>
)
}
else{
return (
<option key={career.id} value={career.career}>
{career.career} 년차
</option>
)
}
})
}
</select>
위 코드를 보면 속성 ref={}
가 들어가 있는데, 이는 훅스 useRef
의 반환 객체이다.
이를 통해 수정한 데이터에 접근할 수 있다.
const 변수명 = useRef(null);
변수명.current.value
// 변수 설정
const nameRef = useRef(null);
// 변수 접근
nameRef.current.value