Express 3.0 req.flash?
-- EDIT --
J'ai écrit quelques middlware pour ce faire: https://npmjs.org/package/flashify
Donc, depuis la publication de l'Express 3.0, les changements ont supprimé req.flash()
https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to-3.x (source)
Voici donc ma question maintenant. Ils ont conseillé d'utiliser req.session.les messages dans un local pour afficher un flash.
Donc faire une séance accessible à la vue, nous devons faire ce qui suit:
nb: Dans les coffee-script
app.locals.use (req,res) ->
res.locals.session = req.session
Comment ferions-nous pour accéder à la session de données de la vue, puis l'effacer? On ne peut pas effacer le contenu de la séance après le point de vue a rendu, mais on ne peut pas l'effacer car il l'habitude de portée de la vue, donc je suis un peu perdu quant à comment contourner ce problème?
OriginalL'auteur Menztrual | 2012-04-17
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le connectez-flash middleware pour ajouter la req.flash() la fonctionnalité de retour en express 3.0.
OriginalL'auteur Tim Gautier
Je crois qu'ils ont simplement déplacé req.flash req.session.messages
OriginalL'auteur chovy
De Tim lien ci-dessus:
Cette middleware a été extrait à partir Express 2.x, après l'Express 3.x retiré un soutien direct pour le flash. connectez-flash apporte cette fonctionnalité retour à l'Express 3.x, ainsi que tout autre middleware-compatible-cadre ou de l'application. +1 pour les radicaux de réutilisabilité.
Express 2.x migrer à 3.x page dit ce qui suit:
req.flash()
(il suffit d'utiliser les sessions:req.session.messages = ['foo']
ou similaire)OriginalL'auteur Avec
Outre
connectez-flash
etexpress-flash
, il y a aussi justeflash
, qui est faite par la expressjs de l'équipe (que je considère comme un bonus). Super simple à utiliser:installer:
app.js:
vue.jade:
Notez comment le code ci-dessus changements; si vous il suffit de lire le tableau, les messages flash garder accroché là dans la session (qui est grande pour les redirections).
OriginalL'auteur Camilo Martin
Installer connectez-flash middleware, exigent, puis
app.use(flash())
et remarque il convient de comparaître devantapp.use(express.session...)
OriginalL'auteur Oraple