¿Por qué mi código me da nulo?
async function run() { try { await client.connect(); const productsCollection = client.db("inventory").collection("items"); // Get All Products app.get('/products', async (req, res) => { const query = {}; const cursor = productsCollection.find(query); const products = await cursor.toArray(); res.send(products); }); // Get Single Product app.get('/products/:id', async (req, res) => { const id = req.params.id; console.log(id); const query = {_id: ObjectId(id)}; const product = await productsCollection.findOne(query); res.send(product); }) } finally { } } run().catch(console.dir);No entiendo por qué aparece Null. Y no hay ningún error al proporcionar productos / id. Y ni siquiera muestra nada. Y este error se muestra en la consola frontal.
En mongo, debe usar await en cada evento relacionado con la base de datos. esto se debe a que se necesita tiempo para recuperar los datos de la colección y el código JavaScript no esperará a menos que se lo indique.
en tu ejemplo
const cursor = productsCollection.find(query);
debiera ser
const cursor = await productsCollection.find(query);
esta es mi primera nota
Mi segunda nota es compartir su código de interfaz y editaré la respuesta si hay algo que agregar.