我的 Ember.js/Handlebars 模板中有一个新添加的代码部分,如下所示:
{{#each day in week.days}}
{{#if day.today}}
<td class="active">
{{else}}
<td>
{{/if}}
<h5><b>{{day.mileage}}</b></h5>
<br/>
{{day.dayStr}}
</td>
{{/each}}
哪里day.today
来自填充如下的对象:
{
...
today: dateEquals(new Date(), currentDate)
}
我希望(在我正在绘制的小日历中)突出显示该日期(如果今天)。
但是,当尝试运行此程序时,会发出以下错误:
[18191:0927/082737:INFO:CONSOLE(12363)] "Uncaught Error: Unclosed element `td` (on line 14).", source: file:///path/to/project/js/libs/ember-template-compiler-1.12.0.js (12363)
此错误是否来自预渲染模板?当然在运行时(“渲染时间”)只会有 <td>
或<td class="active">
,但绝不会两者兼而有之。
如何解决这个问题?
最佳答案
从 Ember v1.11 开始,您可以使用 inline-if helper与 bound attribute syntax 结合:
{{#each day in week.days}}
<td class="{{if day.today 'active'}}">
<h5><b>{{day.mileage}}</b></h5>
<br/>
{{day.dayStr}}
</td>
{{/each}}
关于javascript - Ember.js 1.12.0 中使用 if/else 条件帮助器的未封闭元素 '<td>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32807927/