Sto usando express in nodejs e sto cercando di mantenere asciutto il rendering della mia vista. Dentro il mio layout, ho qualcosa di simile alla seguente (sto usando giada)DRY up up locals di layout nel rendering expressjs
body
nav.login
-if(currentUser)
="logged in information"
-else
="logged out information"
!=body
Il problema è che ogni volta che mi rendo, sto ora tenuti ad avere
res.render('anything.jade',{
locals: {
currentUser: req.session.currentUser,
/*all of my other locals*/
}
});
Sembra un dolore dover passare attraverso tutte le mie chiamate di rendering e aggiungerlo, e poi fare la stessa cosa se devo aggiungere altri locali al layout. C'è un modo per evitare di dover ridigitare 'currentUser' nella gente del posto ovunque io renderizzo
Questo appare come una risposta migliore del mio; Non sono sicuro del modo in cui gli helper integrati erano in Express quando ho chiesto per la prima volta la domanda, anche se – Ryan
Questo è un ottimo consiglio. Ho passato l'oggetto "sito" a ogni chiamata di render(). Grazie! –