var signupHelper = require('./util/signuphelper');
router.post('/signup', signupHelper.checkEmpty, signupHelper.test, function(req,res){ });
我是node.js的新手(不知道它是否被称为回调。)。我的问题是,当signupHelper.checkEmpty
没有错误时它不会返回任何内容,因此它无法继续.test
。我怎样才能解决这个问题?如果没有错误,我想检查数据是否在数据库中不存在,所以我需要调用signupHelper.test来检查。
在我的checkEmpty
中exports.checkEmpty = function(req,res){
------- some code here -------
if(errors.length > 0){
req.flash('errors', errors);
res.redirect('/signup');
}
}
exports.test = function(req,res) { some code....}
答案 0 :(得分:4)
你需要在路由器回调函数中调用下一个参数,看下一个();来自路由器回调。
exports.checkEmpty = function(req,res,next){
------- some code here -------
if(errors.length > 0){
req.flash('errors', errors);
res.redirect('/signup');
}else{
next(); // This will pass the route to the next callback in chain.
}
}
exports.test = function(req,res,next) { some code....}