避免使用express-validator重新呈现页面

时间:2020-11-06 20:43:34

标签: node.js forms express validation express-validator

我使用express-validator来验证我的表单,但是我一直使用它的方式会重新呈现整个页面而不会出现任何错误,并且我希望避免这种情况。


// post free quote
exports.form_post = [
  body("name")
    .isLength({ min: 1 })
    .trim()
    .withMessage("Please enter your name"),
  body("email")
    .isEmail()
    .withMessage("Invalid email address"),


  sanitizeBody("*").escape(),

  (req, res, next) => {
    const errors = validationResult(req);
 
    if (!errors.isEmpty()) {
      res.render("email", {
        form: req.body,
        errors: errors,
 
      });
      return;
    } 

    else {
      // form data IS valid  
  }
];

所以我的问题是如何避免if (!errors.isEmpty()) {res.render("email")} 部分。我觉得重新呈现整个页面会导致糟糕的用户体验,这不是必须的。我读过Flash消息可能是一种选择?还是AJAX还是JSON?任何建议表示赞赏

0 个答案:

没有答案