淘汰赛:无法在foreach区块

时间:2016-03-30 00:28:58

标签: javascript knockout.js

我有一个包含X元素的数组。我循环遍历数组,当我到达数组中的最后一个元素时,我想输出一个额外的列

<tr data-bind="foreach: columns">
  <th>{{ label }}</th>
  <!-- ko if: ($parent.columns.length - 1) == $index -->
  <th>foo</th>
  <!-- /ko -->
</tr>

它没有呈现最后一列。

1 个答案:

答案 0 :(得分:1)

当你想通过javascript在视图中计算任何可观察变量时,你需要使用括号。
查看:

<table>
 <thead >
   <tr data-bind="foreach: columns">
      <th data-bind="text:label"></th>
      <th data-bind="if:$index() == $parent.columns().length-1">Hello</th>
   </tr>
 </thead>
</table>

示例:http://jsfiddle.net/GSvnh/5111/