react - state 값이 json일경우 데이터 갱신(수정) 하는 방법
마스터욱
0
19
0
0
2021-10-11 22:09:15
간단하게 말해서, 부분 수정은 불가능하다.
수정하고 싶으면, 원본 json 루프를 돌면서 새로운 json 값을 생성해서 state 값을 업데이트 해줘야 한다...
이건 너무 무식한 방법 아니야???
근대 웃긴건 정말 이방법 말고는 없다는 거다...
let [ModifyInfo, ModifyInfoEdit] = useState({});
const UpdateModifyInfo = (KeyName) => (event) => {
//console.log(ModifyInfo);
let newArr = {};
for(var key in ModifyInfo)
{
var value = ModifyInfo[key];
//console.log(key, value);
if(KeyName == key){
newArr[key] = event.target.value;
}
else{
newArr[key] = value;
}
}
ModifyInfoEdit(newArr);
};
<select className="room-change-box" name="stayType" onChange={UpdateModifyInfo('stayType')}>
<option value="STAY">숙박</option>
<option value="RENT">대실</option>
</select>