Estou parado mostrando a página do carrinho onde estão listados os produtos que foram adicionados ao carrinho pelos usuários. Eu tenho duas matrizes: uma com os detalhes do produto.
productDetails: [
{
productID: 1,
productTitle: 'Product Title 1',
productPrice: 2000
},
{
productID: 2,
productTitle: 'Product Title 2',
productPrice: 5000
},
{
productID: 3,
productTitle: 'Product Title 3',
productPrice: 1000
},
{
productID: 4,
productTitle: 'Product Title 4',
productPrice: 10000
}
],
Outro item do carrinho Detalhes do produto que possui ID do produto e quantidade selecionados apenas pelos usuários.
cartProducts: [
{
productID: 1,
quantity: 5,
},
{
productID: 3,
quantity: 2,
}
]
Eu filtrei todos os produtos que o usuário selecionou.
cartItemDetails() {
return this.productDetails.filter(
el => this.cartProducts.some(f => f.id === el.productID),
);
},
Esta função fornece os detalhes do produto dos productID 1 e 3. O que eu quero é uma nova matriz que adicione o atributo de quantidade da matriz cartProducts à matriz productDetails.
newArray: [
{
productID: 1,
productTitle: 'Product Title 1',
productPrice: 2000,
quantity:5
},
{
productID: 3,
productTitle: 'Product Title 3',
productPrice: 1000,
quantity:5
}
]
Espero ter esclarecido minhas perguntas. Também estou tentando resolver esse problema com o método javascript do mapa, mas não está funcionando.
Saudações,