问题描述
我正在尝试使用 connect-flash 通过 pug 部署错误和成功消息。我认为我使用正确但它不起作用,似乎 If 语句从不检查。出现在 html 中的块是空的,但通过控制台日志显示了 flash 消息。
这是我的哈巴狗代码:
if message
.container
.row
.col-md-4-mx-auto
.alert.alert-danger.alert-dismissible.fade.show(role="alert")
#{message}
button(type="button" class="close" data-dismiss="alert" aria-label="Close")
span(aria-hidden="true") ×
if success
.container
.row
.col-md-4-mx-auto
.alert.alert-success.alert-dismissible.fade.show(role="alert")
#{success}
button(type="button" class="close" data-dismiss="alert" aria-label="Close")
span(aria-hidden="true") ×
这是我的护照代码:
passport.use('local.signin',new LocalStrategy({
usernameField: 'usuario',passwordField: 'password',passReqToCallback: true
},async (req,usuario,password,done) =>{
await usuarios.findOne({
where: {
usuario: usuario
}
}).then(function(usuario){
if(usuario){
if(usuario.password === password){
done(null,req.flash('success','Welcome '+ usuario));
}else{
done(null,false,req.flash('message','Invalid User or Password'));
console.log(req.flash('message'));
}
}else{
console.log(req.flash('message'));
return done(null,'Invalid User or Password'));
}
})
}));
最后我用这个作为控制器:
exports.signIn = (req,res,next) => {
passport.authenticate('local.signin',{
successRedirect: '/infoGeneral',failureRedirect: '/login',failureFlash: true
})(req,next);
};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)