📅  最后修改于: 2023-12-03 15:36:27.068000             🧑  作者: Mango
connect-flash 是一个 Connect/Express 中间件,用于在用户请求之间存储脚本的消息。这个消息在下次请求中被展示给用户(通常是作为重定向)。
使用 npm 进行安装
npm install connect-flash --save
使用 connect-flash
需要中间件,可以将其包含在 Express 应用中:
const flash = require('connect-flash');
const app = express();
app.use(flash());
可以使用 req.flash()
存储消息。第一个参数是消息类型,第二个参数是要传递的消息:
app.post('/login', (req, res) => {
// 登录逻辑
req.flash('success', '登录成功');
res.redirect('/');
});
可以使用 req.flash()
获取消息。第一个参数是消息类型,这个参数是可选的。如果没有指定消息类型,则 req.flash()
将返回所有数据。
app.get('/', (req, res) => {
const successMsg = req.flash('success');
res.render('index', { successMsg });
});
可以在模板中使用 connect-flash
。这种情况下,可以只传递消息类型,模板引擎将自动获取与该类型匹配的消息。
<% if (locals.success) { %>
<div class="alert alert-success"><%= locals.success %></div>
<% } %>
app.post('/login', (req, res) => {
req.flash('success', '登录成功');
res.redirect('/');
});
app.get('/', (req, res) => {
const successMsg = req.flash('success');
res.render('index', { successMsg });
});
<% if (locals.success) { %>
<div class="alert alert-success"><%= locals.success %></div>
<% } %>
connect-flash
是一个便捷的中间件,可以让你轻松地在用户请求之间传递消息。使用它可以简化应用程序的逻辑,使开发过程更加容易。