Javascript knockout.js foreach$data和$index()?

Javascript knockout.js foreach$data和$index()?,javascript,knockout.js,Javascript,Knockout.js,HTML 您可以在html中看到我使用两个参数调用editUser$数据是第一个参数,$index()是第二个参数。它应该在第一个参数中发送当前用户对象,并将foreach循环的索引作为第二个参数发送 <tbody data-bind="foreach: users"> <tr> <td> <div data-bind="click: $par

HTML

您可以在html中看到我使用两个参数调用editUser$数据是第一个参数,$index()是第二个参数。它应该在第一个参数中发送当前用户对象,并将foreach循环的索引作为第二个参数发送

        <tbody data-bind="foreach: users">
            <tr>
                <td>
                    <div data-bind="click: $parent.editUser.bind($data, $index())" class="clickable icon black-icon big-icon icon-edit"></div>
                </td>
                <td data-bind="text: email"></td>
                <td data-bind="text: username"></td>
                <td data-bind="text: level"></td>
            </tr>
        </tbody>
输出

0
Object{}

它以某种方式完全反转了参数。我无法解释这种行为

绑定的第一个参数是函数上下文。所以,如果你想传递两个参数,你需要这个:

$parent.editUser.bind($data, $data, $index())
这样,
editUser
函数中的
This
将成为
foreach
迭代中的当前项

$parent.editUser.bind($data, $data, $index())