【问题标题】:Recursive page assembling in Node.js with Express and Jade使用 Express 和 Jade 在 Node.js 中进行递归页面组装
【发布时间】:2011-09-19 06:45:46
【问题描述】:

我第一次在 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');

这是处理事情的最佳方式吗?

【问题讨论】:

  • 这是使用递归的异步的一个很好的例子,但更好的方法是让 Express 用布局和部分处理它。 expressjs.com/guide.html#view-rendering
  • 感谢您的意见!看起来视图部分是要走的路。

标签: node.js express pug


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-10
    • 2015-07-13
    • 1970-01-01
    • 2012-08-07
    • 2014-10-10
    • 2011-11-23
    • 2015-07-02
    • 2015-05-09
    相关资源
    最近更新 更多