Возможно ли добавить и изменить объект массива за 1 шаг?
Например:
items =[
{id:0, color: black, name: 'Main', quantity: 0},
{id:1, color: red, name: 'Second', quantity: 0},
{id:2, color: yellow, name: 'First', quantity: 0}
}
const [list, setList] = useState([])
function addObject(item) {
setList([...list, item])
setList(current =>
current.map(obj => {
if (obj === item) {
return {...obj, quantity: 1};
}
return obj;
}))
items.map((good) => {
<div>{good.name}-{good.color}-{good.quantity}</div>
}
}
В этом примере, сначала добавляю объект в массив, а после, меняю его ключ-значение.
или в этом случае мне нужно сначала менять добавляемый объект, а потом уже добавлять его в массив состояния list?