下面的Yelpcamp教程“ connect-flash”在大多数路由上都可以正常运行,但是在route / index.js“注册用户部分”上运行良好,如果用户键入一个已经存在的用户名,则直到我进入Flash消息才会出现到另一个页面。
我认为麻烦是因为发生错误时路由重定向到同一页面。
原始文件已打开 https://ide.c9.io/dougwells/webdevbootcamp ColtYelpCamp / v11 / routes / index.js
出现问题的部分
//hadle sign up logic
router.post("/register", function(req, res) {
var newUser = new User({username: req.body.username});
User.register(newUser, req.body.password, function(err, user){
if(err) {
console.log(err);
req.flash("error", err.message);
return res.render("register");
}
passport.authenticate("local")(req, res, function(){
req.flash("success", "Welcome to the site! " + user.username);
res.redirect("/campgrounds");
});
});
});