最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

Nodejs Flash消息仅在刷新页面后加载(connect

IT培训 admin 6浏览 0评论

Nodejs Flash消息仅在刷新页面后加载(connect

我陷入了connect-flash的困境,除非刷新两次但不确定为什么,否则所有Flash消息都不会加载到页面上。

我创建了一个用于测试连接闪存的小项目,结果相同,请检查以下代码:

App.js代码:

const express = require('express');
const path = require('path');
const favicon = require('serve-favicon');
const logger = require('morgan');
const cookieParser = require('cookie-parser');
const bodyParser = require('body-parser');
const session = require('express-session');
const flash = require('connect-flash');
const app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(session({
 secret: 'keyboard cat',
 resave: false,
 saveUninitialized: true
}));
//using flash
app.use(flash());
app.use(function(req, res, next){
 res.locals.success = req.flash('success');
 res.locals.error = req.flash('error');
 next();
});
//flash route
app.get('/flash', (req, res) =>{
 req.flash("success", "CONNECT FLASH TEST");
 res.render('flash');
});
const port = process.env.PORT || 5000;
app.listen(port, () =>{
 console.log(`App has started on port ${port}`);
})

这是用于呈现flash消息的flash.hbs页面的代码:

<h1>Flash page</h1>
{‌{#if success}}
<h2>{‌{success}}</h2>
{‌{/if}}

非常感谢您提供的帮助,非常感谢您。

回答如下:

它们刷新一次后是否渲染?那就是他们应该如何工作的。

Nodejs Flash消息仅在刷新页面后加载(connect

我陷入了connect-flash的困境,除非刷新两次但不确定为什么,否则所有Flash消息都不会加载到页面上。

我创建了一个用于测试连接闪存的小项目,结果相同,请检查以下代码:

App.js代码:

const express = require('express');
const path = require('path');
const favicon = require('serve-favicon');
const logger = require('morgan');
const cookieParser = require('cookie-parser');
const bodyParser = require('body-parser');
const session = require('express-session');
const flash = require('connect-flash');
const app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(session({
 secret: 'keyboard cat',
 resave: false,
 saveUninitialized: true
}));
//using flash
app.use(flash());
app.use(function(req, res, next){
 res.locals.success = req.flash('success');
 res.locals.error = req.flash('error');
 next();
});
//flash route
app.get('/flash', (req, res) =>{
 req.flash("success", "CONNECT FLASH TEST");
 res.render('flash');
});
const port = process.env.PORT || 5000;
app.listen(port, () =>{
 console.log(`App has started on port ${port}`);
})

这是用于呈现flash消息的flash.hbs页面的代码:

<h1>Flash page</h1>
{‌{#if success}}
<h2>{‌{success}}</h2>
{‌{/if}}

非常感谢您提供的帮助,非常感谢您。

回答如下:

它们刷新一次后是否渲染?那就是他们应该如何工作的。

发布评论

评论列表 (0)

  1. 暂无评论