【发布时间】:2019-02-17 23:48:49
【问题描述】:
我使用express-validator 检查文本字段,使用multer 检查头像。但是我有一个问题,express-validator 停止检查文本字段,如果您将该字段留空,快速验证器将不会给出该字段为空的错误消息。
我在一个单独的变量中显示了文本字段:
import { check, validationResult } from 'express-validator/check';
const validatorSignup = [
check('user_name').exists().isLength({ min: 4, max: 20 }),
....
];
接下来,我想在注册时检查是否所有字段都由用户填写,是否加载了头像:
router.post('/signup', (req, res) => {
try {
upload(req, res, validatorSignup, (err) => {
console.log(req.body)
const errors = validationResult(req.body);
if (!errors.isEmpty()) {
return res.status(422).json({
err: errors.array()
});
}
....
} catch (err) {
return res.status(500).json({
err: err
});
}
});
但我得到一个错误:
onFinished(req, function () { next(err) })
^
TypeError: next is not a function
帮助解决我的问题。
【问题讨论】:
-
你能在函数'onFinished'的地方加上代码吗?
-
我的代码中没有这样的功能
标签: node.js multer express-validator