2016-04-12 19 views
-1

Ich bin ein Anfänger in Nodejs. Ich mache eine E-Commerce-Website mit Kraken Framework und Staub-Vorlage. Ich möchte je nach Sitzungsstatus den Text Anmelden und Abmelden anzeigen. Meine Abmelde- und Login-Funktionen funktionieren einwandfrei. Ich möchte den Anmeldetext ausblenden, wenn sich der Benutzer angemeldet hat, und den Logout-Text, wenn der Benutzer sich abgemeldet hat. Wie kann ich das erreichen? Meine Middleware für die Überprüfung, ob ein Benutzer angemeldet hat in ist wie folgt:Wie kann ich Inhalte in einer Staubvorlage ausblenden und anzeigen?

app.get('*', function(req, res, next) { 
    res.locals.user = req.user || null; 
    next(); 
    }); 

Wie kann ich erreichen, dass Staub-Helfer mit?

Antwort

1

An einem bestimmten Punkt rufen Sie res.render() mit einer Vorlage und einem Kontextobjekt zum Rendern.

Zuerst müssen Sie Ihr Benutzerobjekt als Teil des Kontextes zu übergeben:

return res.render(myTemplate, { 
    ... 
    user: res.locals.user, 
    ... 
}); 

Dann wird in der Vorlage können Sie sehen, ob Benutzer vorhanden:

{?user} 
    Logout link 
{:else} 
    Login link 
{/user} 
Verwandte Themen