【问题标题】:JavaScript template engines for mobile web applications [closed]用于移动 Web 应用程序的 JavaScript 模板引擎 [关闭]
【发布时间】:2011-09-19 20:35:09
【问题描述】:

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

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

【问题讨论】:

  • 有同样的问题。赏金开始了。
  • 请列举您的优先事项:性能?简单?复杂? ...
  • @devundef 性能和与打包工具的兼容性。

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


【解决方案1】:

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

所以你有几个选择:

  • jQuery 模板
    • 优点:或多或少有据可查,被广泛使用。
    • 缺点:它不再由 jQuery 团队维护,即永久测试版。
  • Clousure 模板
    • 优点:丰富的构造块 - ifs、foreach 等。可以为多个目标(js、java ...)编译相同的模板
    • 缺点:即使在开发阶段你也必须执行编译器来编译模板,也就是说,客户端编译不可用。对我来说,这是一种痛苦。虽然威力很大,但如果只用于网络,则似乎是“杀死蚊子的火箭筒”。
  • 远端
    • 从未使用过,但它看起来更像是一个“动态 UI 引擎”,例如 knockout 或 angularjs,而不是模板引擎。
  • 小胡子(我选这个)。
    • 它有一个非常简单(但功能强大)的语法——你可以在 15 分钟内学会 mustache——并且通过不提供“复杂块”,它强制你创建好的模型,而不是用一堆 ifs 来创建胖而复杂的模板, while 和 foreachs。
    • 有超过 10 种语言的引擎版本,包括 javascript、.net、java、ruby...
    • 缺点:在少数情况下,简单性会受到限制
  • 小胡子 + 霍根
    • Hogan 是由 twitter 的人编写的 Mustache 模板语言的编译器。
    • 真的很快
    • 它可以在运行时编译模板或为打包工具预编译。
    • AMD 兼容(有一个 requirejs 插件)
    • 正在积极开发中
    • 缺点:记录不充分。

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

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

【讨论】:

  • 很好的答案!我也留了胡子。
  • 谢谢@NikolayFominyh。我用过小胡子+霍根,我没有抱怨。这是非常愉快的。
【解决方案2】:

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

【讨论】:

    【解决方案3】:

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

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

    【讨论】:

      【解决方案4】:

      应用程序有多“大”?如果你主要追求模板,你应该试试 Google Closure Templates -

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

      一些概念-

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

      【讨论】:

      • 这些不能用普通的 javascript、jquery 和 jqtouch 运行,你必须使用 Closure 来运行这些。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-08
      • 2010-12-15
      • 1970-01-01
      • 2014-11-29
      • 1970-01-01
      • 1970-01-01
      • 2010-09-05
      相关资源
      最近更新 更多