在字段(表单)中设置空值后,显示错误有问题。 如果我用res.redirect('/')删除行,并且在我尝试注册之后我将刷新页面,将显示错误,但是如果我保留此行的重定向 我没有错误,有人可以告诉我为什么?而如何做到这一点,在表单中插入空值后,我会立即点击提交将显示错误。
router.post('/create', function (req, res, next) {
var newUser = {
username: req.body.username,
password: req.body.password
}
req.checkBody('username', 'Login is required').notEmpty();
req.checkBody('password', 'Password is required').notEmpty();
var errors = req.validationErrors();
if (errors) {
res.render('index', {
errors: errors
});
} else {
bcrypt.hash(newUser.password, saltRounds, function (err, hash) {
if (err) {
console.log(err)
} else {
newUser.password = hash;
var user = new User(newUser);
user.save()
.then(function (User) {
res.send(User);
})
}
});
req.flash('success_msg', 'You are registered and can now login');
res.redirect('/');
}
});
答案 0 :(得分:0)
你必须决定。您可以显示一些消息 OR 重定向。不是两个。
最终,您可以使用JavaScript或元标题
在客户端完成此操作示例生成的HTML :
setTimeout(function() {
window.location.href = '/login';
}, 5000);

<div>Logged out</div>
&#13;