Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

167
Vistas
No se puede modificar una propiedad de un objeto en una matriz después de usar el método de filtro

Tengo 2 arreglos de objetos (lo mismo): 1 (artificesToAdd[]) que puede contener 0 o más objetos y el 2nd (newFilter[]) que también puede contener de 0 a un par de objetos, basado en una búsqueda realizada por un usuario.

El objetivo es que para cada objeto contenido en la matriz artificesToAdd[], verifique si este objeto también existe en la matriz newFilter[]. Si es así, necesito actualizar la propiedad 'qtyToAdd' para indicar la cantidad que está inicialmente en mi primera matriz.

Lamentablemente me sale este error:

 'Uncaught TypeError: Cannot add property qtyToAdd, object is not extensible'

Tengo entendido que esta matriz no se puede modificar porque está en referencia, pero no estoy seguro de esto y no sé cómo resolverlo. ¿Debo crear otra matriz y empujar los elementos necesarios dentro?

El error ocurre en esta línea en particular: newFilter[artIndex].qtyToAdd = item.qty;

 const handleFilter = (event: any) => { const searchWord: string = event.target.value; const newFilter = artifices.filter((value) => { return value.codeGF.toUpperCase().includes(searchWord.toUpperCase()); }); // Now let's add ART who had a qty if (artificesToAdd.length > 0) { let artIndex: number; artificesToAdd.forEach(function (item) { artIndex = newFilter.findIndex((i) => i.id === item.id); if (artIndex === -1 || artIndex === undefined) return; console.log(newFilter[artIndex]); newFilter[artIndex].qtyToAdd = item.qty; }); } setFilteredArtifices(newFilter); };
about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

Esto podría ser un alcance, pero intente cambiar esto: "const newFilter =" a esto: "let newFilter="

about 4 years ago · Santiago Gelvez Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda