提问者:小点点

如何将变量传递给车把助手?


我正在尝试在车把中实现一个简单的“if-相等”助手,如下所示:

Ember.Handlebars.registerHelper('ifeq', function(val1, val2, options) {
    return (val1 == val2) ? options.fn(this) : '';
});

并像这样使用它(让我们假设foo变量设置为“bar”):

{{#ifequal foo "bar"}} show something {{/ifequal}}

问题是,当传入val1时,它作为字符串“foo”传入,而不是foo变量的实际值。在我的调试器中,我可以验证这个[val1]实际上设置为foo变量的期望值。

Ember会以某种方式改变行为吗?


共1个答案

匿名用户

Ember. Handlebar.checksterHelper只是传入字符串。正在处理一个寄存器BoundHelper,但在您的情况下,这应该可以。

Ember.Handlebars.registerHelper('ifeq', function(val1, val2, options) {
   return (this.get(val1) == val2) ? options.fn(this) : '';
});

相关问题