使用Express和Jade在Node.js中进行递归页面组装

时间:2011-06-21 07:12:33

标签: node.js express pug

我第一次在Node.js上开始使用API​​,当然我需要一个测试页面,所以我决定在Node中鞭打一个以及它的地狱。

在我开始想出一个很好的方法来加载标题,正文和页脚文件(Jade语法文件)并让它们成为朋友并一起渲染之后,我想出了一个递归解决方案。

function assemblePage(name,markup)
{
    markup = markup || '';
    if (markup=='')
        fs.readFile('header.jade', function(err,data){assemblePage(name,markup+data)});
    else if (name != 'footer')
        fs.readFile(name+'.jade', function(err,data){assemblePage('footer',markup+data)});
    else
        fs.readFile('footer.jade', function(err,data){console.log(markup+data);__res.send(jade.render(markup+data))});
}

所以我要打电话的是:

assemblePage('home');

这是最好的办法吗?

1 个答案:

答案 0 :(得分:3)

我认为您应该使用expressjs(针对Node.js的高性能,高级Web开发)来呈现模板。 它有一个非常复杂的View Rendering。我认为您需要的是 view partials 。在screencasts部分,您可以观看有关view partials

的截屏视频