本文介绍了在绑定中使用$ index时,淘汰赛未对表达式求值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么,当我尝试使用$$ index使用基因敲除法(knockout.js)绑定某些文本时,我得到的是函数的代码而不是数字?

Why is it, that when I try to use knockout.js to bind some text using $index, I get the code of a function instead of a number?

<tbody  data-bind="foreach: MyList">
  <tr>
    <td><span data-bind="text: $index + 1"></span></td>
  </tr>
</tbody>

我得到的不是得到1、2、3等:

Instead of getting 1, 2, 3 etc., I get this:

您可以看到,在上图中的最后一个字符处,我的零索引已添加到1.如果从绑定中删除"+1",则会得到0、1、2而不是函数

You can see, by the last character in the above image, that my index of zero is being added to 1. If I remove the '+ 1' from my binding, I get 0, 1, 2 instead of the function.

如何告诉淘汰赛评估表达?提交表单时,我遇到了同样的问题.我的字符串字段是作为函数而不是值提交的.

How do I tell knockout to evaluate the expression? I have the same issue when I submit the form. My string fields are being submitted as a function instead of the value.

推荐答案

$ index是可观察的,它是一个函数.尝试<span data-bind="text: $index() + 1"></span>

$index is an observable, which is a function. Try <span data-bind="text: $index() + 1"></span>

这篇关于在绑定中使用$ index时,淘汰赛未对表达式求值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-31 22:12