• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

167
Views
Todos los ID de objetos son los mismos cuando se insertan nuevos elementos en una matriz

Estoy ejecutando el siguiente código:

 dietDay.meals.forEach((meal) => { meal.mealProducts.forEach((mealProduct) => { if ( mealProduct.product.id && this.fetchedProductIds.includes(mealProduct.product.id) ) { return; } else if (mealProduct.product.id) { this.fetchedProductIds.push(mealProduct.product.id); this.httpClient.get(environment.backendUrl + '/products/' + mealProduct.product.id) .subscribe((response: any) => { this.products.push(response); this.setDaySummary(); this.setActiveMealSummary(); }); } }); }); });

El bucle itera a través de las comidas y obtiene los datos del producto del backend mediante una llamada GET.

this.products matriz de productos contiene una matriz de objetos de tipo Productos. En cada iteración, se descarga un nuevo Producto desde el backend y se inserta en la matriz. Después de ejecutar el bucle, todos los productos de la matriz tienen el mismo ID, pero todas las demás propiedades son diferentes.

ingrese la descripción de la imagen aquí

Como puede ver en la salida de registro de la consola de la matriz this.products , dos objetos tienen la misma ID, aunque cuando console.log emito cada respuesta individual desde el backend, las ID son diferentes.

¿Qué está pasando?

about 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En la función this.setDaySummary() , tenía '=' en lugar de '===' y estaba asignando la identificación del producto.

about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error