如何在handlebars代码中定义自定义助手
How to define a custom helper in handlebars ember
如何编写一个ember把手栏帮助器来显示以下内容:
<div value="40">text</div>
我需要在这里定制value
和text
。并将这些值绑定到上下文。
我的方法不太管用:
我定义了一个helper:
Ember.Handlebars.helper('progress-bar', function(value, options) {
return '<div value="' + value + '">' + options.text + '</div>';
});
然后使用:
{{progress-bar value="50" text="this.status"}}
当定义Handlebars helper时,我如何访问模板中传递给helper的参数?
因为你使用的是Ember,所以你可以使用Ember组件而不是普通的把手栏帮助器。
的例子:
<script type="text/x-handlebars" id="index">
{{my-component value="foo" text="bar"}}
</script>
<script type="text/x-handlebars" id="components/my-component">
<div {{bind-attr value="value"}}>
{{text}}
</div>
</script>
使用组件的好处是你不需要编写任何javascript——Ember生成所有的管道代码。您可以在这里找到有关组件的更多信息:http://emberjs.com/guides/components/defining-a-component/
按以下步骤操作,
http://emberjs.jsbin.com/yimecihutuka/1/edit 哈佛商学院<script type="text/x-handlebars" data-template-name="index">
<ul>
{{#each item in model}}
<li>{{item}}</li>
{{/each}}
</ul>
{{progress-bar "50" status}}
</script>
js
App.IndexController = Ember.Controller.extend({
status:"the status"
});
Ember.Handlebars.helper('progress-bar', function(value, status) {
return new Ember.Handlebars.SafeString('<div value="' + value + '">' + status+ '</div>');
});
相关文章:
- 在JavaScript中定义自定义对象和函数(第2部分)
- 在JavaScript中定义自定义对象和函数
- 为html标记定义自定义css样式
- 定义自定义JavaScript异常的较短方法
- grunt-usemin:定义自定义流
- 用于定义自定义服务的语法
- 可以在 gwt 中设置本机滚动条的样式,无需定义自定义滚动条,也无需使用 ScrollPanel 或 CustomScr
- 如何在Javascript中有效地定义自定义HTMLElement属性,以便能够使用HTML进行设置
- Javascript或PHP中是否有任何画布/布局编辑器用于定义自定义文档布局
- 如何在ckeditor中定义自定义html标记
- 为节点函数定义自定义回调
- 定义自定义提供程序和$injector:unp未知提供程序
- 如何在handlebars代码中定义自定义助手
- Jasmine:为jQuery对象定义自定义漂亮打印机的最简单方法是什么?
- 定义自定义事件
- 定义自定义jQuery对象属性的最佳方式
- 如何在Zend框架中添加js文件时定义自定义属性
- 定义自定义工具栏
- 定义自定义Grunt任务并将其与其他任务链接
- 如何定义自定义的angularjs指令,只改变属性,而不是(替换/附加)整个HTML标签