节点表达模板引擎,支持布局和部分

时间:2012-09-18 05:44:59

标签: node.js express template-engine

有没有一种很好的方法来进行模板化(允许我编写html而不是jade),这将支持布局和部分?

我只能使用带有express-partials npm插件的ejs来获取此行为。但是我觉得ejs网站已经过时且没有得到很好的支持。

我正在寻找好的例子。

我想创建一个主页面布局,其中包含页眉+页脚,并为导航包含一个单独的模板。

Knockoutjs看起来很受支持,但我找不到很多使用快递的例子。

更新:我在LinkedIn对js模板的评估中发现了一篇非常好的文章:http://engineering.linkedin.com/frontend/client-side-templating-throwdown-mustache-handlebars-dustjs-and-more

4 个答案:

答案 0 :(得分:3)

您可以使用EJS中的“包含”功能轻松模仿此功能。它不像Express 2.x中的布局那么优雅,但它适用于简单的场景,你需要的只是页眉和页脚加上你不需要使用Jade。

基本上,您可以创建两个“布局”页面(layoutTop.ejs和layoutBottom.ejs),并在每个页面上手动包含它们。

<强> mypage.ejs

include layoutTop
html for my page.ejs goes here
include layoutBottom

(无耻的插件)你可以在这里看到更详细的解释: http://hectorcorrea.com/Blog/Using-layouts-with-EJS-in-Express-3.x

答案 1 :(得分:1)

我已经决定将visionmedia的ejs与ejs-locals一起用于布局,包含和块。

https://github.com/RandomEtc/ejs-locals https://github.com/visionmedia/ejs

答案 2 :(得分:0)

尝试twigjs。它很适合你的描述。

https://github.com/fadrizul/twigjs

但是ejs也不支持我。我认为这甚至是解决方案。

答案 3 :(得分:0)

尝试handlebars

您可以将其与hotplates一起使用,以自动解析模板。

它还支持重用部分客户端。