提问者:小点点

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


我正在创建车把助手:

export default Ember.Handlebars.registerHelper('if-eq', function(v1, v2, options) {
if (this.get(v1) === this.get(v2)) {
return options.fn(this);
}
return options.inverse(this);
});

并像这样执行:

{{#each item in model.cons }}
{{#if-eq model.currentUser.id item.record_poster_id}}
<div class="td author current">{{model.currentUser.name}}</div>
{{else}}
<div class="td author remote">{{model.remoteUser.name}}</div>
{{/if-eq}}
{{/each}}

我收到了像文本model.currentUser.id这样的变量,使用this. get(v1)我可以得到值。但是this.get只适用于model.currentUser.id,不适用于item。record_poster_id(可能是因为它是循环中的变量)

问题:如何按值传递变量?

回答:如何比较每个值?


共1个答案

匿名用户

您正在传递变量的值,您只是错误地访问它们。您为什么使用this. get(v1)来访问参数?只需使用v1。它已经是您传入的值,您不必对其做任何特殊处理。

另外,我不确定句柄语法是否有效。Ember可能需要您执行这样的操作。

相关问题