2016-07-29 10 views
0

Ich benutze hbs derzeit Antworten mit Lenker Vorlagen zu machen:Wie kann ich eine Vorlage rendern, aber nicht die Anfrage beenden, mit Express-HBs?

res.render('blog-article', { 
    title: article.title, 
    slug: article.slug, 
    article: article, 
    serverVars: JSON.stringify({ 
     mixPanelToken: mixPanelToken 
    }) 
}); 

In einigen Strecken, würde Ich mag einige serverseitige Transformationen auf dem HTML zu tun, nachdem hbs beendet hat.

ich in einem normalen ‚Lenker‘ laden konnte und das tun, aber Ich mag würde wieder verwenden all Caching und partials von hbs.

Wie kann ich ein Layout mit hbs rendern, ohne die Anfrage zu beenden?

Antwort

1

Mit jedem Template-Engine in Express können Sie die generierte Ausgabe abfangen durch einen Rückruf an res.render() vorbei:

res.render('blog-article', { 
    title: article.title, 
    slug: article.slug, 
    article: article, 
    serverVars: JSON.stringify({ 
     mixPanelToken: mixPanelToken 
    }) 
}, function(err, output) { 
    ... 
}); 

the documentation See;

+1

Was für eine perfekte Antwort: kurze, offizielle Docs Link und Demo-Code. Vielen Dank! – mikemaccana