node.js - express的connect-flash的req.flash的原理是什么,为什么只显示一次

查看:71
本文介绍了node.js - express的connect-flash的req.flash的原理是什么,为什么只显示一次的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

express的connect-flash的req.flash的原理是什么,为什么只显示一次,是显示一次之后存储的值就会被删除了吗;

var n = 0;
// 添加模板必需的三个变量
app.use(function (req, res, next) {
  console.log("n",n++);
  res.locals.user = req.session.user;
  res.locals.success = req.flash('success').toString();
  console.log(1111111111,req.flash('success'));
  //console.log(2222222222,res.locals.success);
  res.locals.error = req.flash('error').toString();
  next();
});

app.get("/a",function(req, res){
  req.flash("success","hahaha");
  //return res.render('posts');
  res.redirect('/b');
})


app.get('/b',function(req,res){
  res.render('posts')
})

访问 ‘/a’重定向到 ‘/b’ req.flash会显示
在'/b'刷新后 req.flash就消失了,req.flash('success').toString()娶不到值了

解决方案

源码

req.flash('success')访问过一次后,会删除

这篇关于node.js - express的connect-flash的req.flash的原理是什么,为什么只显示一次的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆