【发布时间】:2012-09-30 04:49:17
【问题描述】:
我正在尝试使用 phonegap、backbone.js 和 coffeescript 构建一个移动应用程序。我想做这样的事情:
class MyApplication.Views.EntriesIndex extends Backbone.View
template: load('my/template') //It will load the external file my/template.tpl
render: ->
$(@el).html(@template())
this
我想同步加载它。我已经看过 require.js,但我觉得这个简单的想法太复杂了。我看到我可以将 JST 用于 Rails 应用程序,但我不知道如何在没有 sprocket 的情况下使用它,而且我的应用程序必须只能在客户端工作。
同步加载模板的更好方法是什么?
我认为最好是预加载它。
我的应用程序将托管在客户端。
【问题讨论】:
-
您是否尝试过将异步设置为 false 的 $.ajax?假设您使用的是 jQuery
-
您的应用程序是托管在客户端还是服务器上(phonegap 基本上只是包装它)?
-
我必须在初始化时加载模板,成功时存储它并缓存它以仅加载一次?嗯,这可以是一个解决方案。有没有更好的办法?它认为更好的解决方案是预编译它。
-
我的应用程序将托管在客户端。我更新了我的问题。
-
如果您正在寻找更好的方法,请使用 require.js。在开发中,它会在需要时自动加载所有模板,在生产中,您可以将其编译为单个文件并在需要时加载。
标签: javascript backbone.js coffeescript sprockets