2017-05-31 8 views
0

Wie kann ich ein Objekt dynamisch in res.render in Express in einem MEAN-Stack bekommen?Wie man Objekte dynamisch in res.render einfügt

res.render('myTemplate', {title: 'This is my title'}); 

Ich möchte etwas wie folgt aus:

res.render('myTemplate', function(){ 
    var myReturnObject{title: 'This is my title'}; 
    //do someting to generate return object; 
    return myReturnObject; 
}); 

Kann jemand raten, wie kann ich meine Vorlage Variablen programmatisch in Render-Funktion erzeugen?

Danke.

Antwort

0

Sie können Ihre Daten in ein Objekt einfügen und dann im res.render übergeben.

var myReturnObject = {title: 'This is my title'}; 
res.render('myTemplate', myReturnObject); 
0

Ihre res.render() Anrufe werden im Kontext eines Controllers leben. Zum Beispiel könnte es etwas wie sein (app.get('/', function(req, res) {});. In der Regel möchten Sie einige Daten holen, dann übergeben Sie die abgerufenen Daten an die Vorlage in Ihrem res.render() Rückruf. Das folgende Schnipsel zeigen, wie Sie dies mit einer fiktiven callToDb() Funktion, die Abfrage tun würde eine Datenbank:

app.get('/', function(req, res) { 
    callToDB(function(err, results) { 
    const templateVars = {//use results like you want here}; 
    res.render('path/to/template/, templateVars); 
    }); 
}); 
Verwandte Themen