为了账号安全,请及时绑定邮箱和手机立即绑定

连接闪存的错误消息:未定义闪存

连接闪存的错误消息:未定义闪存

料青山看我应如是 2022-10-21 10:27:47
我正在读一本关于 node.js、express 和 mongodb 的书。作者使用connect-flash。但是,我似乎无法让它正常工作。使用 connect-flash 的文件夹如下所示,已删除不相关的代码。index.jsconst flash = require('connect-flash');app.use(flash());const newUserController = require('./controllers/newUser')const storeUserController = require('./controllers/storeUser') app.get('/auth/register', redirectIfAuthenticatedMiddleware, newUserController)app.post('/users/register', redirectIfAuthenticatedMiddleware, storeUserController)控制器/storeUser.jsconst User = require('../models/User.js')const path = require('path')module.exports = (req,res)=>{    User.create(req.body, (error, user) => {        if(error){            const validationErrors = Object.keys(error.errors).map(key => error.errors[key].message)            // req.session.validationErrors = validationErrors            req.flash('validationErrors',validationErrors)            return res.redirect('/auth/register');        }        res.redirect('/')    })}控制器/newUser.js:module.exports = (req, res) =>{    res.render('register',{        errors: flash('validationErrors')    })}错误ReferenceError:未定义闪存。此错误发生在 controllers\newUser.js:3:17)我已多次重读该章并寻找没有运气的解决方案。我不明白为什么它在 index.js 中声明时未定义。为什么 flash 未定义?我该如何解决?
查看完整描述

1 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

module.exports = (req, res) =>{

    res.render('register',{

        errors: req.flash('validationErrors')

    })

}

你可能会错过从 req.call 调用它。


查看完整回答
反对 回复 2022-10-21
  • 1 回答
  • 0 关注
  • 73 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信