Vla*_*ich 38 javascript haml templates backbone.js
我进入Backbone.js为我的项目构建javascript代码,我喜欢HAML在后端(rails)进行模板化,所以我喜欢将它用于Backbone Views模板.我知道有几个HAML端口到Javascript,如 https://github.com/creationix/haml-js和骨干支持JST和小胡子轻松.
什么是使用haml模板的最佳方式.
在客户端使用HAML有什么缺点吗?性能,额外的脚本加载时间(由jammit等资产打包工具处理)
Cra*_*aig 26
我知道你已经提到了它,但我建议将haml-js与Jammit一起使用.只需在javascripts和assets.yml中添加haml.js,并将template_function: Haml
模板文件包含在包中.例如
javascript_templates:
- app/views/**/*.jst.haml
Run Code Online (Sandbox Code Playgroud)
然后在您的视图中,您可以包含此包(= include_javascripts :javascript_templates
),Jammit会将任何.jst.haml文件打包到window.JST['file/path']
.(如果您查看页面源,您应该看到一个javascript文件<script src="/assets/javascript_templates.jst" type="text/javascript"></script>
)
要使用这些模板,只需调用其中一个JST Jammit创建.即
$('div').html(JST['file/path']({ foo: 'Hello', bar: 'World' }));
Run Code Online (Sandbox Code Playgroud)
Jammit将使用Haml-js模板函数函数来渲染模板.
注意:请务必在Gemfile中指向Jammit的github repo,以获取支持haml-js工作所需的换行符的最新版本.
Duk*_*uke 14
我准备给哈哈咖啡一杯.(没有双关语)我不能赞美咖啡的赞美; 加上它现在是Rails 3.1中的默认值.现在我可以在我最喜欢的模板语言中嵌入coffeescript,并预编译该批次.
哦,快乐..现在让它发挥作用.
我知道这会有点绕过这个问题但是我们走了:)
我的rails应用程序我使用haml来获取后端的所有视图.太棒了.由于某些原因(主要是i18n),我不喜欢在客户端使用模板.我是这样做的:
你只处理html和jQuery是非常棒的.对于一些不需要i18n的视图,我使用下划线模板,因为它已经存在.
至于haml模板性能,似乎胡子和把手更快.