React에는 상태가 있습니다.
const [selecteditems, setSelectedItems] = useState()
양식에 나는 이런 식으로 보이는 물체가 제출 {items: {item1: true, item2: true, item3: false}}
: I 필요 이런 모습이 그 객체의 배열로 객체를 켜 [{ name: 'item1', price: ''}, {name: 'item2', price: ''}]
과 함께 사용할setSelectedItems
그런 다음을 사용하여 개별 항목의 가격을 업데이트하고 싶습니다 setSelectedItems
. 이것을 어떻게 달성 할 수 있습니까?
요약하자면 먼저 객체를 객체 배열로 변환 한 다음 객체 배열에서 개별 가격 값을 개별적으로 업데이트해야합니다.
당신은 사용할 수 있습니다 filter
및 map
. 개체를 업데이트하는 find
데 사용할 수 있습니다.
const obj = {items: {item1: true, item2: true, item3: false}};
const res = Object.entries(obj.items).filter(([k,v]) => v)
.map(([k]) => ({name: k, price: ''}));
console.log(res);
//update
let name = 'item2';
res.find(x => x.name === name).price = '$10';
console.log(res);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다