2017-12-03 11 views
1

私は自分のログインフォームにフラッシュメッセージを表示したいと思っています。フォームに間違った資格を与えたときにフラッシュメッセージを表示したいのですが、少し混乱した。周りの誰も助けてください。パスポートにログインエラーのフラッシュメッセージを追加する方法

app.post('/login',passport.authenticate("local", { 
successRedirect: "/", 
failureRedirect: "/login" 
}), function(req, res){ 
req.flash('error', err.message) 
}) 

私はまだフォームからエラーを表示するのが好きです。私はそれがことを願っています。この

req.flash('error', 'This is an error message'); 
res.locals.message = req.flash(); 

ようres.localsにあなたのメッセージを設定する必要があり

req.flash('error', err.message) 

答えて

0

この任意の ヘルプに新しいが、その後、あなたが

<div class="error-message"> 
    <strong> <%=message.message%> </strong> 
</div> 

ようなあなたのhtmlでそれらを表示することができています助けます。

+0

それを、それをフラッシュ真、真

app.use(function(req,res,next){ res.locals.error = req.flash("error"); res.locals.success = req.flash("success") next(); }) app.post("/dashlogin", passport.authenticate("local", { successRedirect: "/dashboard", failureRedirect: "/dashboard/login", failureFlash: true, }), function(req,res){ }) 

に設定します。nはあなたがfailureFlashでコーディングする必要がありますこれをログインに追加してリダイレクトしてからフラッシュに@Nikunj Sardharaが表示されます –

1

使用サーバー側でこのコード:あなたのpassport.jsにメッセージを追加することができます

var passport = require('passport');  
    var flash = require('connect-flash'); 
    app.use(flash()); 
    app.use(function(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(); 
    }); 

のようにポップアップする:あたりとして(

req.flash('error_msg', 'That email is already taken.'); 
req.flash('success_msg', 'This is successfull'); 

とフロントエンドのコードで、あなたのあなたの警告メッセージを表示する:

{{#if success_msg}} 
     <div class="alert alert-success">{{success_msg}}</div> 
    {{/if}} 
    {{#if error_msg}} 
     <div class="alert alert-danger">{{error_msg}}</div> 
    {{/if}} 
    {{#if error}} 
     <div class="alert alert-danger">{{error}}</div> 
    {{/if}} 
+0

設定は問題ありませんが、ログインポストに追加してください@HOTAM SINGH –

0

in logiその後、私はそれを設定する方法を知っているが、私の混乱があるページでユーザに

<% if(error && error.length > 0) { %> 
    <div class="alert alert-danger" role="alert"> 
     <div class="container"> 
      <%= error %> 
     </div> 
    </div> 
<% } %> 
関連する問題