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

时间:2014-08-01 18:30:42

标签: ember.js template-engine

我创建了把手助手:

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}}

我收到了像text&#34; model.currentUser.id&#34;这样的变量,使用this.get(v1)我可以获得价值。 但是这个.get只适用于model.currentUser.id而且不适用于item.record_poster_id(也许是因为它来自循环中的变量)

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

答案:How to compare values in each?

1 个答案:

答案 0 :(得分:-1)

传递变量的值,您只是错误地访问它们。为什么使用this.get(v1)来访问参数?只需使用v1即可。它已经传递了你的价值,你不必为它做任何特别的事情。

另外,我不确定Handlebars语法是否有效。 Ember可能会要求您执行this之类的操作。