您推荐哪些Javascript模板引擎?[关闭]


78

我想知道您对javascript模板引擎的看法,您认为哪种在性能方面更好?

我找到了一些人们进行基准测试的链接:

http://jsperf.com/jquery-template-table-performance/15

http://jsperf.com/jquery-template-table-performance/8

http://www.viget.com/extend/benchmarking-javascript-templating-libraries/



github.com/foo123/Contemplate,轻量级,快速,灵活和同等的模板引擎(包括jsperf测试和示例测试)(ps:我是作者)
Nikos M.

Answers:


109

模板引擎选择器!-帮助您为项目选择正确的模板引擎的工具。


6
它是如此好(讽刺)。回答3个首要问题:客户或服务器:客户多少逻辑:只是基础它是否需要成为最快的之一:是不会产生任何结果。
萨尔瓦多·达利

2
@SalvadorDali-“最快”的都可以直接编译为JS,因此您的其他要求是“基本”冲突,因为它们没有任何限制。
马克·卡恩

1
@SalvadorDali,一种可以帮助您选择事情的工具不会使这些事情做您想要的。
2014年

请注意,该站点不再受支持:github.com/garann/template-chooser
Chris

我最喜欢的是Slim(slim-lang.com)。特别适合红宝石爱好者。
Alex Nazarsky '16

24

在性能方面,我发现它不是模板引擎本身,而是有可能预编译模板的地方。无论如何,将所有JavaScript源文件串联并缩小到一个文件以用于生产模式是一个好习惯,因此预编译模板基本上也是相同的步骤。

我已经使用jQuery模板和Mustache进行客户端模板化,但是我最喜欢的还是EJS,它的性能总是比我到目前为止尝试过的要快得多,尤其是在生产模式下(只要有可能就编译为本地字符串连接,并且只需要一个DOM访问以实际插入呈现的视图)。它是JavaScriptMVC框架的一部分,当与StealJS作为依赖管理器一起使用时,它已经为您完成了所有模板的编译工作(View Engine还支持Micro,Mustache和jQuery模板)。


我当前使用的是ribs.js,它已经带有下划线模板,不知道是否应该使用其他模板引擎。但是我在所有这些基准胡须中看到的似乎是赢家?
卡哈2011年

我发现小胡子相当慢。您的模板引擎是否存在实际的性能问题?
Daff 2011年

不是,我唯一要问的是如何预编译模板?
卡哈2011年

取决于您决定使用的模板语言。基本上,在构建过程中,需要在缩小之前执行编译器脚本。例如对于jQuery模板github.com/wookiehangover/jquery-tmpl-jst
Daff 2011年

3
毫无疑问,EJS是最好的。它只是让您烦恼,让我们编写JavaScript,让我们以超干净的方式远程加载它,让您将'<'替换为'['以使用服务器端编码。对我而言,其他所有事情都像一些超级书呆子一样,试图通过一些漂亮的语法抽象垃圾使其变得可爱。
杰森·塞布林2012年

11

可能是纯正的-它允许使用由您现有的html制作的模板将JSON转换为HTML ,而不是使用具有特殊语法的单独模板进行转换。

在PURE的网站上:

简单,超快速的模板工具,可从JSON数据生成HTML

表示(HTML)和逻辑(JS)仍然完全分开

可独立运行或与dojo,DomAssistant,Ext JS,jQuery,Mootools,Prototype,Sizzle和Sly一起使用

理解的最好方法是查看该库的实际作用:(来自官方演示) 纯模板引擎演示

所有的演示都在这里


1
文档不够准确,Github存储库没有问题跟踪器来报告错误。
smonff 2014年


4

选择具有您最感兴趣的api和语法的模板语言。如果遇到性能问题,则可以考虑其他方法。

除非您要构建具有数千行的表,否则您可能不会注意到差异。

我个人使用Google的“关闭模板”。我之所以选择它,主要是因为它也具有Java实现。我从未做过基准测试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.