我进入 Backbone.js 来为我的项目构建 javascript 代码,我喜欢 HAML 在后端(rails)上进行模板化,所以我想将它用于 Backbone 视图模板化。我知道 Javascript 有几个 HAML 端口,例如https://github.com/creationix/haml-js https://github.com/creationix/haml-js骨干轻松支持 JST 和小胡子。
使用 haml 模板的最佳方法是什么?
在客户端使用 HAML 有什么缺点吗?性能、额外的脚本加载时间(由 jammit 等资产打包工具处理)
我知道您已经提到过,但我建议将 haml-js 与 Jammit 一起使用。只需将 haml.js 包含在您的 javascript 中并在您的 asset.yml 中添加template_function: Haml
以及将您的模板文件包含到包中。例如
javascript_templates:
- app/views/**/*.jst.haml
然后在你的视图中你可以包含这个包(= include_javascripts :javascript_templates
)并且 Jammit 会将所有 .jst.haml 文件打包到window.JST['file/path']
。 (如果您查看页面源代码,您应该会看到一个 javascript 文件,例如<script src="/assets/javascript_templates.jst" type="text/javascript"></script>
)
要使用这些模板,只需调用 Jammit 创建的 JST 之一即可。 IE。
$('div').html(JST['file/path']({ foo: 'Hello', bar: 'World' }));
而Jammit会使用Haml-js模板函数功能来渲染模板。
注意:请务必在 Gemfile 中指向 Jammit 的 github 存储库,以获取支持 haml-js 工作所需的换行符的最新版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)