我想在重定向消息上传递Flash消息到React组件。重定向或应用程序正常运行,但无法收到消息。
这是我的设置
server.js
...
server.use(flash())
server.use((req, res, next) => {
res.locals.error_msg = req.flash('error_msg')
res.locals.messages = req.flash()
next()
})
server.post('/register', (req, res) => {
const { name, email, password, confirmPassword } = req.body
...
User.findOne({ email: email })
.then(user => {
if(user){
req.flash({ 'error_msg': 'already in use..' })
res.redirect('/register')
...
})
server.get('/register', (req, res) => {
return handle(req, res)
})
server.get('*', checkAuthentication, (req, res) => {
return handle(req, res)
});
checkAuthentication
和mongodb
的用户检查均有效,并在出错时重定向,但实际上我不知道如何获取该Flash消息(当前代码全部来自文档)
我正试图通过这种方式获取消息。
register.js
import React from 'react'
import Link from 'next/link'
import Layout from '../components/Layout'
export default class register extends React.Component {
render() {
return (
<Layout>
<div>{message.text}</div>
...
</Layout>
)}}
谢谢..