Javascript 重定向上的Flash消息-Express
使用重定向时无法显示flash消息(尽管使用渲染时一切正常) 如果使用此代码呈现视图,则消息看起来很好Javascript 重定向上的Flash消息-Express,javascript,node.js,express,connect-flash,Javascript,Node.js,Express,Connect Flash,使用重定向时无法显示flash消息(尽管使用渲染时一切正常) 如果使用此代码呈现视图,则消息看起来很好 req.flash('success_msg', 'Successfully Registered'); res.locals.message = req.flash(); res.render('home'); 但是如果我想重定向(我在本例中就是这样做的),那么消息就不会显示 req.flash('success_msg', 'Successfully Registered'); res.
req.flash('success_msg', 'Successfully Registered');
res.locals.message = req.flash();
res.render('home');
但是如果我想重定向(我在本例中就是这样做的),那么消息就不会显示
req.flash('success_msg', 'Successfully Registered');
res.locals.message = req.flash();
res.redirect('/');
index.js
// Global Vars
app.use(function(req, res, next) {
res.locals.success_msg = req.flash('success_msg');
res.locals.error_msg = req.flash('error_msg');
res.locals.error = req.flash('error');
next();
});
// Use Routes
app.use('/', routes);
app.use('/', users);
任何关于如何处理这个问题的想法,请,如果我没有提供足够的信息,请让我知道在这里添加什么
不过我注意到,我可以在重定向之前注销邮件
req.flash('success_msg', 'Successfully Registered');
var message = res.locals.message = req.flash();
console.log(message); // { success_msg: [ 'Successfully Registered' ] }
res.redirect('/');
但在我看来,它从未出现过
<% if (locals.message) { %>
<div class="alert alert-success alert-dismissible fade show text-center" role="alert">
<strong><%= message.success_msg %></strong>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% } %>
&时代;
谢谢我很确定问题出在全局变量的函数中 这一点在这里完美无瑕:
...
req.flash('msg', 'some msg');
res.redirect('/page');
对于.get()
请注意,每次您获得flash内容时,它都会被删除:
req.flash('msg', 'some msg');
console.log(req.flash('msg')); // prints 'some msg'
console.log(req.flash('msg')); // prints []
另外,我建议你向布莱恩·麦克阿瑟询问
req.flash('msg', 'some msg');
console.log(req.flash('msg')); // prints 'some msg'
console.log(req.flash('msg')); // prints []