Подтвердить что ты не робот

$ index + 1 в нокаут для привязки foreach

Мне нужно отобразить $index+1 в таблице.

Если я просто использую $index, все элементы будут начинаться с 0, мне нужно начинать с 1.

Здесь документация нокаута: http://knockoutjs.com/documentation/foreach-binding.html

Здесь вы можете найти этот пример:

<h4>People</h4>
<ul data-bind="foreach: people">
    <li>
        Name at position <span data-bind="text: $index"> </span>:
        <span data-bind="text: name"> </span>
        <a href="#" data-bind="click: $parent.removePerson">Remove</a>
    </li>
</ul>
<button data-bind="click: addPerson">Add</button>

Таким образом, он отобразит следующее:

Люди

Имя в позиции 0: Bert Удалить

Название в позиции 1: Чарльз Убрать

Название в позиции 2: Denise Remove

Мне действительно нужно, чтобы это было просто для показа.

Имя в позиции 1: Bert Удалить

Название в позиции 2: Чарльз Убрать

Название в позиции 3: Denise Remove

Я пробовал это без успеха <span data-bind="text: ($index + 1)"> </span>

4b9b3361

Ответ 1

$index является наблюдаемым. Поэтому вам нужно использовать его следующим образом:

<span data-bind="text: ($index() + 1)"> </span>