用于移动Web应用程序的JavaScript模板引擎

时间:2011-09-19 20:35:10

标签: javascript templates jquery-mobile jqtouch template-engine

我正在使用jQTouch构建应用程序。我想利用其中一个JavaScript模板引擎来避免使用从JSON服务返回的数据手动生成HTML。

众所周知哪些引擎可提供良好的移动兼容性,并与jQTouch(和jQuery Mobile)共存?

4 个答案:

答案 0 :(得分:4)

如果您的目的是仅在移动浏览器/包装器(或现代桌面浏览器)中使用引擎,则兼容性不是问题。此外,性能对于基于Web的移动应用程序至关重要。

所以你有几个选择:

  • jQuery模板
    • 优点:或多或少有文献记载,广泛使用。
    • 缺点:它不再由jQuery团队维护,即永远是beta。
  • Clousure模板
    • 优点:丰富的构造块 - ifs,foreach等。可以为多个目标编译相同的模板(js,java ...)
    • 缺点:即使在开发阶段,您也必须执行编译器来编译模板,即客户端编译不可用。对我来说,这是一种痛苦。虽然它非常强大,但如果仅用于网络,它就像是“杀死蚊子的火箭筒”。
  • 远端
    • 从未使用过,但它看起来更像是像动态UI引擎一样的淘汰赛或者角色,而不是模板引擎。
  • 小胡子(我选这个)。
    • 它有一个非常简单(但功能强大)的语法 - 你可以在15分钟内学习胡子 - 并且不提供“复杂的块”它强制你创建好的模型而不是胖和复杂的模板,有一堆ifs, ands and foreachs。
    • 有超过10种语言的引擎版本,包括javascript,.net,java,ruby ......
    • 缺点:少数情况下的简单性变得有限
  • 小胡子+ hogan
    • Hogan是来自twitter的人编写的Mustache模板语言的编译器。
    • 真的很快
    • 它可以在运行时编译模板或预编译包装工具。
    • 符合AMD标准(有一个requirejs插件)
    • 正在积极开发
    • 缺点:记录不清。

小胡子:http://mustache.github.com/mustache.5.html

霍根:https://github.com/twitter/hogan.js

答案 1 :(得分:1)

我使用Distal模板,它适用于iPhone。

答案 2 :(得分:1)

我在ASP.NET MVC 3上使用jQuery模板用于大型jQuery Mobile单页面应用程序。将所有模板文件放在部分视图中运行得非常好。模板在jQuery Mobile支持的所有浏览器上运行良好,包括IE 6,7,8。

https://github.com/jquery/jquery-tmpl

答案 3 :(得分:0)

应用程序的“大”程度如何?如果您主要使用模板,则应尝试使用Google Closure模板 -

http://code.google.com/closure/templates/

一些概念 -

http://code.google.com/closure/templates/docs/concepts.html