【发布时间】:2014-11-16 09:18:14
【问题描述】:
我正在寻找一个javascript模板引擎,它在大型js应用程序中使用时性能良好,也非常适合移动应用程序。因此,我已经针对这些进行了各种 jsPerf 测试。似乎有很多显示不同的结果,并且很难找出哪个是标准测试。
谁能指导我一个标准的 jsPerf,我可以参考,它还应该包括以下模板:灰尘、下划线、霍根、小胡子、车把。
据我观察,dot.js 表现稳定 渲染速度,但对于大型应用程序是否足够成熟?
jsPerf 测试中显示的“with”和“no with”(特定于 underscore.js)是什么? 谁能解释一下。
在所有测试中,我都看到了一些流行的模板,比如 mustache, 车把、灰尘、霍根等似乎比性能落后 其他模板,那么为什么人们使用它们而忽略了顶部 表演者,是不是因为这些模板引擎的成熟?
提前致谢
【问题讨论】:
-
你介意列出你经历过的jsPerfs以供参考吗?
-
关于问题 2:»默认情况下,模板通过文档中的 with 语句将数据中的值放置在本地范围内。见developer.mozilla.org/en/JavaScript/Reference/Statements/with
-
嗨,这是我已经解决的性能测试..jsperf.com/dom-vs-innerhtml-based-templating/473
-
@rodneyrehm 我已经了解下划线特有的 with 和 no 之间的区别,但我确实有一个问题是否总是可以使用 no with 来实现下划线,我的意思是在预编译和缓存的情况下...?
-
@bhargav 我讨厌“with”,所以我将下划线设置设置为全局使用对象:
_.extend( _.templateSettings, { variable: "data" } );现在我可以编译/渲染模板,而不必每次都附加{ variable: "data" }。
标签: javascript underscore.js template-engine dot.js