Tengo una lista de ID diferentes y trato de encontrar los productos que tienen esos ID y los inserto en otra matriz. El problema es que cuando uso findOne() devuelve el mismo producto para todos los ID. .
let wishpro = ['632a5e5rtybdaafd23','65fdaartbdqip55'];
for(let i = 0; i < wishpro.length ; i++) {
let x = await product.findOne({id : wishpro[i]});
console.log("x : " + x.id )
wishProducts.push(x);
}
findOne() devolverá la primera coincidencia que encuentre. En su lugar, puede usar find() con el operador $in y obtener todos los registros con una consulta:
const wishpro = ['632a5e5rtybdaafd23','65fdaartbdqip55'];
const result = await product.find({ id: { $in: wishpro } });