【问题标题】:Express 3.x best layout implementation (template engines)Express 3.x 最佳布局实现(模板引擎)
【发布时间】:2013-12-15 07:31:29
【问题描述】:

据我所知,ExpressJS 3 放弃了对布局的支持,将其留给了模板引擎。因此,如果一个引擎不支持布局,那么最好的 Node.js 模块是什么?或者,如果最好听起来很主观,但不是最好,但至少是一个可行的解决方案?

我将使用 Hogan.js 作为模板引擎。

或者,也许有更好的替代概念来替代布局?我觉得它很有帮助,但我想了解其他方法。

【问题讨论】:

  • 在终端生成项目,默认生成jade。我觉得jade是快递队的首选(?)
  • Jade,虽然可读性很强,让我想起了 ruby​​ 世界的 slim 和 haml,据说速度比较慢。这就是我尝试其他模板引擎的原因。
  • 我不确定,但对于 v8 引擎,jade 对于这些测试来说更快 hogan jsperf.com/dom-vs-innerhtml-based-templating/473

标签: node.js layout express template-engine hogan.js


【解决方案1】:

有很多模板引擎。

以下是我知道的一些不错的:

  • Handlebars - {{mustache}} 的很好扩展。
  • Jade - 来自 visionmedia(express.js 的作者)和我最喜欢的一个非常强大的模板引擎。
  • ejs - visionmedia 的另一个模板引擎。

您会在这里找到更多引擎 - in this question

【讨论】:

  • 好吧,我默认开始使用翡翠,但在某处读到它与其他人相比并没有那么快。也许我最终会使用它。
  • 不要使用 EJS,文档不好,而且有些功能已经缺失一年多。
  • 是的,据说 Jade 很慢,但它使打字变得容易。如果您对 HTML 的使用方式感到满意,或者您实际上更喜欢这样做,Handlebars 可能是最重要的建议之一。
  • 我一直在使用 Jade,因为它似乎是 Node 社区中的 goto 模板引擎。但是已经决定改用Handlebars。 Jade 的简写符号很棒,但在尝试集成普通 HTML 或 SVG 时会出现问题。必须将块转换或转义为 Jade 速记是一种痛苦。再加上查看 Twitters Hogan.js 看起来对前端很有前途,然后可以在服务器/浏览器之间保持一致。
【解决方案2】:

你可以看看 node.js 支持的以下模板:

https://github.com/joyent/node/wiki/modules#wiki-templating

这也是根据渲染时间比较不同类型模板的基准

https://github.com/Deathspike/template-benchmark

我的建议: ejsjade 功能非常强大,功能也很多,都在 express 中支持

【讨论】:

    【解决方案3】:

    我正在使用express-ejs-layouts,并且与下划线/lodash 和 ejs 模板完美配合。

    【讨论】:

      猜你喜欢
      • 2023-03-25
      • 2011-06-25
      • 1970-01-01
      • 2016-12-24
      • 2013-10-27
      • 2011-08-21
      • 1970-01-01
      • 2012-11-06
      • 1970-01-01
      相关资源
      最近更新 更多