반응형
자바스크립트만 쓸 때는 select 의 옵션 값은 selected 를 써서 가져왔는데, 오늘 리액트에서 이거와 똑같이 하려고 하니까
아래 에러가 떳다.
검색해보니 리액트에서는 위의 기능을 지원해주지 않아서 그런거라 하더라. 리액트에서는 옵션 값을 가져 오기 위해서는 select 태그에서 onChange 를 적용한 후 event.target.value 를 통해 선택된 해당 값을 가져올 수 있다. 뭐가 어찌되었든 복잡하지 않아서 다행이다.
const [selectVal,setSelectVal] = useState('');
const changeSelectValue = (event) =>{
setSelectVal(event.target.value)
};
return (
<div>
<select
//onChange 이벤트를 적용해서 select의 value에 입력(선택)된 값을 가져옴
onChange={changeSelectValue}
className='movie_side_select' id='sort_by'>
{optionText.map((text,i)=>{
return (
<option
key ={i}
value={`${optionVal[i]}`}
>{text} </option>
)
<select/>
반응형