Please see the code below
function uploadImage(req, res) {
var userId = req.params.id;
var file_name = 'No limite...';
if (req.files) {
var file_path = req.files.image.path;
var file_split = file_path.split('\');
var file_name = file_split[2];
var ext_split = file_name.split('\.');
var file_ext = ext_split[1];
if (file_ext == 'png' || file_ext == 'jpg' || file_ext == 'jpeg' || file_ext == 'gif') {
Evento.findByIdAndUpdate(eventoId, { image: file_name }, { new: true }, (err, eventoUpdated) => {
if (err) {
res.status(500).send({
mensagem: 'Erro ao atualizar o evento'
});
} else {
if (!eventoUpdated ) {
res.status(404).send({
mensagem: 'Sua solicitação de atualização não foi aceita para o evento'
});
} else {
res.status(200).send({ evento: eventoUpdated, image: file_name });
}
}
});
} else {
fs.unlink(file_path, (err) => {
if (err) {
res.status(200).send({ mensagem: 'A extensão não é válida foi excluído' });
} else {
res.status(200).send({ mensagem: 'A extensão não é válida' });
}
});
}
} else {
res.status(200).send({ mensagem: 'Sua solicitação não atendida ao upload' });
}
}
This is the error;
ReferenceError: eventoId is not defined
at uploadImage (C:\layout resposive\API\ep\controllers\evento.js:144:38)
at Layer.handle [as handle_request] (C:\layout resposive\API\ep\node_modules\express\lib\router\layer.js:95:5)
at next (C:\layout resposive\API\ep\node_modules\express\lib\router\route.js:137:13)
at Form.<anonymous> (C:\layout resposive\API\ep\node_modules\connect-multiparty\index.js:109:9)
at Form.emit (events.js:180:13)
at C:\layout resposive\API\ep\node_modules\multiparty\index.js:582:12
at process._tickCallback (internal/process/next_tick.js:176:11)
You're saying that the error is on line 144
What happens that it can not save the image in the bank but can transfer the image to folder inside the server, it can not fall into the last condition of the if that is below,
} else {
res.status(200).send({ evento: eventoUpdated, image:
file_name });
}