我正在尝试在淘汰赛中使用以下“with”绑定:
<td data-bind="with: $data.tiers()[$parents[1].Index]">
...
</td>
但我收到错误“意外令牌);”。如果我只是使用$data.tiers()[0]
它,我知道它会$parents[1].Index
计算为一个数字。这只是淘汰赛的限制,您不能使用嵌套索引访问器吗?
我正在尝试在淘汰赛中使用以下“with”绑定:
<td data-bind="with: $data.tiers()[$parents[1].Index]">
...
</td>
但我收到错误“意外令牌);”。如果我只是使用$data.tiers()[0]
它,我知道它会$parents[1].Index
计算为一个数字。这只是淘汰赛的限制,您不能使用嵌套索引访问器吗?
这是一个已知问题:ko.expressionRewriting.preProcessBindings 在数组表达式上失败,这已在 KO 版本 3.0 中修复。
如果您无法升级到 3.0,您可以在链接的 github 问题中找到可能的解决方法,因此您只需将表达式更改为:
<td data-bind="with: ($data.tiers()[$parents[1].Index])">
...
</td>
演示JSFiddle。