request.ValidationErrors()不是函数()表达式和节点js

时间:2017-10-16 17:11:25

标签: javascript node.js express

我正在使用MEAN堆栈编写聊天应用程序。我正在使用express-validator包验证注册屏幕。下面是我的server.js文件中包含的源代码。我在哪里创建了一个服务器

let express = require('express');
let application = express();
let path   = require('path');
let db = require("./db");
const server = require('http').createServer(application);
let bodyParser = require('body-parser');
let expressValidator = require('express-validator')

当用户点击注册按钮时。我将用户重定向到注册控制器,我在下面的代码片段。  `module.exports.RegisterUser =(req,res)=> {         if(req.body){             let user = new userModels(req.body);

        req.check('username', 'Not a valid username').isEmail();
        req.check('password', 'password doen\'t meet criteria').isAlpha();

        var validationErrors = req.ValidationErrors();


        if(validationErrors){
            console.log(validationErrors.msg);
        }
        // if there is no validation error
        user.save()
            .then(user => {
                return res.status(HttpStatus.CREATED).send("Sign up successfull");
            })
            .catch(err => {
                return res.status(HttpStatus.INTERNAL_SERVER_ERROR).send(err);
            });
    } else {
        res.status(HttpStatus.BAD_REQUEST).send("Invalid Input");
    }
}`

我可以构建项目但无法验证。我得到了req.ValidationErrors()不是一个函数。

提前感谢。

1 个答案:

答案 0 :(得分:0)

我相信它应该是:

const validationErrors = req.validationErrors();

代替

编辑:糟糕,刚刚注意到Sterling Archer已经发布了正确答案。无论哪种方式,我都会将其留在这里,以提醒所有阅读不佳的人