我一直在使用expressjs开发应用程序,但是在使用express-validator V4时出现错误。错误是:TypeError: check is not a function
所以我的代码看起来像这样:
//users.js
var check = require('express-validator/check');
var validationResult = require('express-validator/check');
router.post('/register',[
check('name').exists()
], function(req, res){
var errors = validationResult(req);
if(errors){
console.log('There are errors');
}else{
console.log('No errors');
};
});
module.exports = function(app){
app.use('/users', router);
};
请注意,我使用的是纯JavaScript,没有ES6。
谢谢。
最佳答案
express-validator包含ES6,并且支持Node 6+。
如评论中所述,您使用的是Node 8.4.0,那么您对此很满意。
您导入的功能不正确,因为必须从默认导出中绑定功能。或使用解构,这很酷:
const { check, validationResult } = require('express-validator/check');
// or:
const check = require('express-validator/check').check;
const validationResult = require('express-validator/check').validationResult;
另外,请记住检查usage section :)
关于node.js - 未在使用路由V4的express-validator上定义检查,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46515854/