我无法赶上所有对普通手把和修改的Ember Handlebars助手所做的所有修改.如果我记得正确,可以使用以下方法注册一个助手
> Ember.Handlebars.helper
> Ember.Handlebars.registerHelper
> Ember.Handlebars.registerBoundHelper
> Handlebars.registerHelper
对我来说太多了你能解释一下它有什么区别吗?
解决方法
Ember.Handlebars.registerHelper是一个基本的帮助器,不会将参数字符串绑定到属性.例如,考虑使用registerHelper创建的一个hello帮助器,它只返回一个问候消息.
Ember.Handlebars.registerHelper('hello',function(name) { return 'Hello ' + name; });
当您在模板中使用它时,
{{hello name}}
您将获得显示文本为“Hello”名称. name属性的值不被查找.
要获取你需要的帮助器的name属性的值,registerBoundHelper.顾名思义,它创建一个绑定到名称属性之间.随着名字的更改,帮助者再次被呼叫重新投递.实施方式类似,
Ember.Handlebars.registerBoundHelper('hello',function(name) { return 'Hello ' + name; });
Ember.Handlebars.helper与registerBoundHelper相同,还有一些额外的检查功能,可以自动检测你想要什么样的帮手.
香草Handlebars.registerHelper不在Ember中使用.它将为不使用Ember的项目创建类似的帮助.