Я делаю некоторую внешнюю проверку приложения узла с JS. Я хочу перебрать каждое поле и вернуть ошибку, что поле является обязательным для значения поля. В настоящее время, если поле пусто, ошибка передается обратно. Однако, если несколько полей не заполнены, возвращается только первая ошибка. Как бы я передал обратно каждую ошибку? Код ниже:
app.post('/books/new', function (req, res, next) {
let transaction;
try {
errors = [];
let errorList = []
for (let i in req.body) {
if (!req.body[i]) {
errorList.push(`${[i]} is a required field`)
throw new Error(errorList);
} else {
break;
}
}
Library.create({
title: req.body.title,
author: req.body.author,
genre: req.body.genre,
year: req.body.year,
})
res.redirect('/');
}
// if (!req.body) { throw new Error(`${req.params[0]} required`) } else {
// }
// transaction.commit();
catch (err) {
errors.push(err.message);
console.log('errors', errors);
res.render('new-book', {
errors: errors
})
}
});