Tengo la matriz de 1 dimensión llamada [cars] y los valores se agregan a través de un cuadro de entrada usando React JS.
//initial array setup const cars = [ ]; const [itemsList, setItemsList] = useState([ {brand: ""} ]); //function called every time I add a new value const carsUpdate = (e, index) => { const list = [...itemsList]; list[index]["brand"] = e.target.value; setItemsList(list); };Después de agregar 3 autos, obtengo lo siguiente.
autos constantes = [
{marca: "Fiat"},
{marca: "Ford"},
{marca: "Renault"}
];
Lo anterior funciona perfectamente para 1 un tipo de matriz de dimensión.
Ahora, estoy tratando de hacerlo multidimensional agregando una propiedad adicional [colores] a la matriz que contiene otra matriz. La idea es obtener este tipo de resultado agregando colores por separado e individualmente a través de otros cuadros de entrada.
const cars = [ { brand: “Fiat”, colors: [ “red”, “green” ] }, { brand: “Ford”, colors: [ “blue”, “yellow” ] }, { brand: “Renault”, colors: [ “red”, “white” ] }, ]He modificado lo siguiente:
const [itemsList, setItemsList] = useState([ {brand: "", colors: [ ] } ])
pero estoy luchando por modificar la función carsUpdate para actualizar la propiedad de colores con nuevos valores.
const carsUpdate = (e, índice) => {
let list = [...itemsList];
let ListaInterior = [];
listaInterior = lista[índice]["colores"];
ListaInterior.push(e.objetivo.valor);
lista[índice][colores] = listaInterior;
setItemsList(lista);
};