Tengo un objeto de matriz y quiero actualizar el objeto de matriz usando id y props.
a continuación se muestra la estructura del objeto de matriz,
array object = [{columGrp:"All",deafultColumnName:"a",id:0},{columGrp:"ll",deafultColumnName:"ww",id:1},{columGrp:"oo",deafultColumnName:"qq",id:2},{columGrp:"qq",deafultColumnName:"ee",id:3}]Tengo un diseño de tabla editable y cuando cambia un campo, paso el nombre del campo, la identificación y el valor modificado. en base a eso, ¿cómo puedo actualizar la matriz de objetos?
const onChange=(props,value,id)=>{ //code here } onChange("columGrp","qwerty",1); // result => array object = [{columGrp:"All",deafultColumnName:"a",id:0},{columGrp:"qwerty",deafultColumnName:"ww",id:1},{columGrp:"oo",deafultColumnName:"qq",id:2},{columGrp:"qq",deafultColumnName:"ee",id:3}]una ayuda sería muy apreciable.
Puede encontrar el objeto por id de su matriz de objetos usando la función de filtro. Si el objeto existe, entonces cambia la propiedad dada, pasando el valor dado. Los objetos funcionan por referencia en javascript, por lo que cualquier cambio en el objeto encontrado también afectará su objeto dentro de su matriz.
const objectsArray = [{ columGrp: "All", deafultColumnName: "a", id: 0 }, { columGrp: "ll", deafultColumnName: "ww", id: 1 }, { columGrp: "oo", deafultColumnName: "qq", id: 2 }, { columGrp: "qq", deafultColumnName: "ee", id: 3 }]; const onChange = (props, value, id) => { const obj = objectsArray.find(x => x.id === id); if (obj) { obj[props] = value; } } onChange("columGrp", "qwerty", 1); console.log(objectsArray)