我正在尝试做一些以前有效的基本表单验证,但现在给我一个错误,说 req.checkBody 不是一个函数。
我有一个 app.js 文件。在该文件中,我需要快速验证器。
var expressValidator = require('express-validator');
我在 app.js 文件中实现 expressValidator:
app.use(expressValidator({
errorFormatter: function(param, msg, value) {
var namespace = param.split('.')
, root = namespace.shift()
, formParam = root;
while(namespace.length) {
formParam += '[' + namespace.shift() + ']';
}
return {
param: formParam,
msg : msg,
value : value
}
}
}));
然后,在 user.js 文件中,我有这段代码会引发错误。我在 user.js 文件中不需要 express-validator(以前不需要,它工作正常)。我将整个内容导出到 app.js 文件。
router.post('/register', function(req, res) {
// get user inputs
var name = req.body.name;
var email = req.body.email;
var password = req.body.password;
// form validation
req.checkBody('name', 'Name is required.').notEmpty();
});