Я пытаюсь внедрить flash messages
в моем проекте, но по какой-то причине сообщения не отображаются. Вот мой код:
const session = require("express-session");
const flash = require("connect-flash");
// Support cookie manipulation.
app.use(cookieParser());
// express session middleware
app.use(
session({
secret: "keyboard cat",
resave: false,
saveUninitialized: false
})
);
// connect flash
app.use(flash());
//global vars
app.use((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();
});
вот пример запроса:
const myEntries = await getUserEntries(res.locals.decodedClaims.uid);
req.flash("error_msg", "You already own this course.");
console.log(res.locals); //error_msg: [],
res.render("dashboard", {
user: res.locals.decodedClaims,
entries: myEntries,
csrfToken: req.csrfToken(),
title: "Dashboard"
});
});
и, наконец, файл e js:
<% if(typeof errors != 'undefined'){ %>
<% errors.forEach(function(error) { %>
<div class="alert alert-warning alert-dismissible fade show" role="alert">
<%= error.msg %>
<button type="button" class="close" data-dismiss="alert" aria-
label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% }); %> <% } %>
<% if(success_msg != ''){ %>
<div class="alert alert-success alert-dismissible fade show my-3"
role="alert">
<%= success_msg %>
<button type="button" class="close" data-dismiss="alert" aria-
label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% } %>
<% if(error_msg != ''){ %>
<div class="alert alert-danger alert-dismissible fade show my-3"
role="alert">
<%= error_msg %>
<button type="button" class="close" data-dismiss="alert" aria-
label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% } %>
<% if(error != ''){ %>
<div class="alert alert-danger alert-dismissible fade show my-3"
role="alert">
<%= error %>
<button type="button" class="close" data-dismiss="alert" aria-
label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% } %>
То же самое с ejs
файл, вероятно, в этом нет ничего плохого, но я думаю, что с конфигурацией чего-то не хватает.
Спасибо
Код не был отформатирован до