我一直跟着教程我節點應用程序來實現認證:https://scotch.io/tutorials/easy-node-authentication-setup-and-local未定義的消息變量的NodeJS
我有被我發現了在運行應用程序時,這個錯誤的問題:(我的代碼是exacltly如何應根據上述網站)。
我試圖尋找一個答案,但最好我能得到的是增加這個功能到我的服務器代碼:
app.use(function(req, res, next){
res.locals.message = req.flash();
next();
});
這會將然而沒有任何錯誤的應用程序,該消息不似乎顯示在我的前端。不完全確定爲什麼,但我只能通過這個項目得到這個問題,我可以在我的其他項目中沒有任何問題的情況下實現消息。
我添加以下,但我的繼承人GitHub的鏈接我的代碼位:
routes.js
app.post('/signup', passport.authenticate('local-signup', {
successRedirect : '/dashboard',
failureRedirect : '/#contact',
failureFlash : true
}));
passport.js
if (user) {
return done(null, false, req.flash('signupMessage', 'Email already in use!'));
}
指數。 ejs
<% if (message.length > 0) { %>
<div class="alert alert-danger"><%= message %></div>
<% } %>
Github的項目:https://github.coventry.ac.uk/salmanfazal01/304CEM-Back-End
你是一個傳奇隊友!我花了最後幾個小時試圖修復它,結果變得如此輕微:/ 嘗試了你的第一個解決方案,它工作。基本上,我的註冊/表單位於我的索引頁面中,並且我將它們分開渲染,並在其中傳遞消息而不是主要的主頁面。乾杯! –
很高興幫助:) –