我正在使用自定义 Handlebars 助手来扩展“if”块的功能。
在 Ember 1.10 中,这不再起作用,因为没有允许绑定到该属性的 Ember.Handlebars.bind 属性....
Ember.Handlebars.registerHelper('ifCond', function (a, b, options) {
return Ember.Handlebars.bind.call(options, contexts[0], a, options, true, function(result) {
return result === b
});
});
用法是:
{{#ifCond property "value"}}
{{some-other-component}}
{{else}}
something other...
{{/ifCond}}
但这会返回错误“无法读取未定义的属性‘调用’”
有什么方法可以绑定到助手中传递的属性吗?我不能使用 registerBoundHelper 因为它不支持子块...我想使用 Component 而不是 helper 但后来我不能使用 {{else}} 块...
帮助器的此解决方案以前取自handlebars.js {{#if}} 条件中的逻辑运算符