首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >闪光灯,连接闪光灯和快车闪光灯的区别

闪光灯,连接闪光灯和快车闪光灯的区别
EN

Stack Overflow用户
提问于 2017-11-08 10:15:05
回答 2查看 9.3K关注 0票数 14

我还是有点搞不懂闪光灯,连接闪光灯和快车闪光灯到底有什么区别。

安装:

  • flashnpm install flash
  • 快递-闪存npm install express-flash
  • connect-flash :npm install connect-flash

用法:

闪存

代码语言:javascript
复制
app.use(session()); // session middleware 
app.use(require('flash')());

app.use(function (req, res) {
  // flash a message 
  req.flash('info', 'hello!');
  next();
})

connect-flash

代码语言:javascript
复制
var flash = require('connect-flash');
var app = express();

app.configure(function() {
  app.use(express.cookieParser('keyboard cat'));
  app.use(express.session({ cookie: { maxAge: 60000 }}));
  app.use(flash());
});

express-flash它甚至要求使用应该设置与connect-flash相同的方式

代码语言:javascript
复制
var flash = require('express-flash'),
    express = require('express'),
    app = express();

  app.use(express.cookieParser('keyboard cat'));
  app.use(express.session({ cookie: { maxAge: 60000 }}));
  app.use(flash());

谁能解释一下吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-08 16:16:49

这三个包裹之间真的没有太大的差别。他们都以自己的方式完成了同样的事情。这三者之间的区别是:

  1. 闪存是由快递团队编写的,使其成为快递的官方中间件。
  2. connect flash,如README中所述:

这个中间件是从Express 2.x中提取的

因此,从某种意义上说,这类似于闪存,但它的遗留版本来自Exchange2.xDays。但是,这个名称表明它是用于连接框架的,但是通常任何connect-*包都可以很好地与Express一起工作。

  1. express-flash只是connect-flash.的包装器您可以在源代码这里中看到这一点。

在所有这三项指标中,connect-flash似乎是从npm统计数据中使用最多的。

票数 17
EN

Stack Overflow用户

发布于 2022-07-01 01:48:34

  • connect-flash帮助您处理req.session.destroy()res.render('view-name')时的错误
  • 如果在调用res.render('view-name')之前销毁会话,就会得到"Error: req.flash()需要会话“,即使您根本没有使用set或获取闪存。

我使用pug模板并遇到了这个问题,当我从express-flash切换到connect-flash之后,错误就消失了。

我希望这能帮助那些遇到和我一样的问题的人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47176945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档