2016-07-29 78 views
0

我目前使用hbs使用车把模板来渲染响应:如何使用express hbs呈现模板,但未完成请求?

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

在某些路线,我想这样做的HTML一些服务器端转换hbs结束后。

我可以加载一个正常的“把手”,并做到这一点,但我想重新使用hbs的所有缓存和部分。

如何在未完成请求的情况下使用hbs渲染布局?

回答

1

随着表达任何模板引擎,可以通过使回调res.render()拦截所生成的输出:

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

参见the documentation;

+1

这是一个完美的答案:简短的官方文档链接和演示代码。谢谢! – mikemaccana