Nodejsのconnect-flashモジュールの呼び出し

1653 ワード

connect-flashモジュールの使用
connect-flash概要
connect-flashはnodejsのモジュールの一つで、flashは一時的なメモリで、しかも一時的なメモリの中の値は一回使ったら空になります.ウェブサイトのヒント情報を作るのに適しています.
connect-flashはどうやってインストールしますか?
$ npm install --save connect-flash
connect-flashはどう使いますか?
index.jsに導入する
flash = require('connect-flash');
アプリでミドルウェアを使う
app.use(flash());
flashに保存された変数をres.locars変数に保存します.もし私がウェブサイトでflashに保存されているerrorとsuccess変数を使うならば、それらをlocars変数に入れることができます.このようにすべてのテンプレートはこの変数を得ることができます.
app.use(function(req,res,next){
    res.locals.user=req.session.user;
    res.locals.success=req.flash('success').toString();
    res.locals.error=req.flash('error').toString();
    next();
});
ページでsuccessとerrorが存在するかどうかによって、ユーザーに提示された場合:

在页面跳转之前给success和error赋值,就可以让它们获得相应的变量,显示给用户后,这些变量会被清空,例如检测用户是否登录:

module.exports={
    checkLogin:function checkLogin(req,res,next){
        if(!req.session.user){
            req.flash('error','   ');
            return res.redirect('/signin');
        }
        next();
    },
    checkNotLogin:function checkNotLogin(req,res,next){
        if(req.session.user){
            req.flash('error','   ');
            return res.redirect('back');//       
        }
        next();
    }
}