Quiero crear una publicación y cargar una imagen si se proporciona.
Si subo la imagen, todo funciona bien, pero si no, aparece este error:
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'image' of null Entiendo que tiene que ver con async/await pero no sé cómo reescribirlo o cuál es el problema específicamente.
app.post("/posts/create", async (req, res) => { let image = req.files.image; if (image !== null) { image.mv( path.resolve(__dirname, "public/images", image.name) ); } await Post.create(req.body); res.redirect("/"); });Eso no se debe a async/await, es simplemente a que no tiene ningún archivo .file en su solicitud, por lo que solo necesita un middleware para manejar datos multipart/form-data como multer , y luego pasar el middleware a través de app.post para puede acceder a req.files, si desea cargar esa imagen en un servidor como cloudinary, puede usar multer-cloudinary-storage .