【问题标题】:How to get flash messages working with handlebars?如何使用车把获取 Flash 消息?
【发布时间】:2017-06-30 03:47:09
【问题描述】:

我正在尝试让 flash 与我的车把模板一起使用,但它不起作用。如何显示消息

if (!user) return done(null, false, { message: 'No user found'})

return done(null, false, { message: '哎呀!密码错误。'})

在警告框中?

已安装的软件包:express、connect-flash、express-handlebars、passport、passport-local、express-session、connect-mongo

app.use(flash())

passport.use(new LocalStrategy(function(username, password, done) {
  User.findOne({ username: username }, function(err, user) {
    if (err) return done(err)
      if (!user) return done(null, false, { message: 'No user found'})
        user.comparePassword(password, function(err, isMatch) {
          if (isMatch) {
            return done(null, user)
          } else {
            return done(null, false, { message: 'Oops! Wrong password.'})
          }
        })
    })
}))

app.post('/login', passport.authenticate('local', {
    successRedirect: '/',
    failureRedirect: '/login',
    failureFlash: true
}))

车把模板:

{{#if message}}
<div class="alert alert-danger">{{message}}</div>
{{/if}}

【问题讨论】:

    标签: javascript node.js passport.js connect-flash


    【解决方案1】:
    app.get('/login', function(req, res) {
        res.locals.message = req.flash('message');
        res.render('login');
    });
    

    【讨论】:

      猜你喜欢
      • 2023-03-25
      • 1970-01-01
      • 2017-11-30
      • 1970-01-01
      • 1970-01-01
      • 2016-12-15
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      相关资源
      最近更新 更多