Ember内联如果给出错误TypeError:options.template未定义

时间:2016-09-22 16:23:25

标签: javascript ember.js handlebars.js

如果我这样做

{{#each pages as |page|}}
   {{#if (eq page actual)}}
     <li class="active"><a href="#">{{page}}</a></li>
   {{else}}
     <li><a href="#">{{page}}</a></li>
   {{/if}}
 {{/each}}

它运作良好,但它太重复......

如果是这样的话,我想做一个内联:

{{#each pages as |page|}}
    <li {{if (eq page actual) "class='active'"}}><a href="#">{{page}}</a></li>
{{/each}}

但这会产生以下错误:

TypeError: options.template is undefined

我无处可寻。我找到的最接近的主题是this one,但这不是我想要的......

我的eq帮手是:

import Ember from 'ember';
const eq = (params) => params[0] === params[1];
export default Ember.Helper.helper(eq);

1 个答案:

答案 0 :(得分:2)

建议的方法是将其用于list标签:

<li class={{if (eq page actual) "active"}}><a href='#'>{{page}}</a></li>

这有帮助吗?如果没有,那么该错误消息似乎与模板的这一部分有很大关系。