Quiero cargar la imagen principal y las imágenes laterales de 2 entradas de archivo diferentes usando multer , pero no pude encontrar cómo hacerlo, multer parece aceptar solo una carga en la ruta, entonces, ¿cómo puedo hacer eso? Multer me arroja un error de campo inesperado en mi código.
Formulario HTML:
<form method="POST" action="/addprod" enctype="multipart/form-data"> <h3>Add product</h3> <h4>Main image</h4> <input type="file" class="mainimg" accept="image/*" name="mainimg"> <h4>Side images</h4> <input type="file" class="sideImgs" accept="image/*" multiple name="sideimgs"> <button>Add product</button> </form>nodo.js
const storage = multer.diskStorage({ destination: function(req, file, cb) { cb(null,'../public/prodImgs/') }, filename: function(req, file, cb) { const newName = Date.now() + '-' + Math.round(Math.random() * 100) cb(null,file.fieldname + '-' + newName) } }); const upload = multer({ storage: storage }); let mid = { main: upload.single('mainimg'), sides: upload.array('sideimgs') } app.post('/addprod', [mid.main, mid.sides], async (req, res) =>{ console.log(req.files,"\n\n\n") console.log(req.body) });