使用AngularJS获取'ng-repeat'项的索引(计数器)?

las*_*off 37 javascript indexing counter angularjs

我正在使用AngularJS及其ng-repeat指令来显示一系列问题.我需要从每个问题开始编号1.如何显示和增加这样的计数器ng-repeat?这是我到目前为止:

<ul>
    <li ng-repeat="question in questions | filter: {questionTypesId: questionType, selected: true}">
        <div>
            <span class="name">
                {{ question.questionText }}
            </span>
        </div>
        <ul>
            <li ng-repeat="answer in question.answers">
                <span class="name">
                    {{answer.selector}}. {{ answer.answerText }}
                </span>
            </li>
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

أني*_*اشم 49

Angularjs文档中有很多示例,您只需要花一些时间来探索它.

在这里看到这个例子:ngRepeat例子,它是相同的情况.

<ul>
    <li ng-repeat="question in questions | filter: {questionTypesId: questionType, selected: true}">
        <div>
            <span class="name">
                {{$index + 1}} {{ question.questionText }}
            </span>
        </div>
        <ul>
            <li ng-repeat="answer in question.answers">
                <span class="name">
                    {{answer.selector}}. {{ answer.answerText }}
                </span>
            </li>
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

  • 所以答案是什么?:d (2认同)
  • 由于这是接受的答案,我只是在这里评论:同时使用`ngIf`仍会增加`$ index`,这在你的例子中不起作用.就像我想使用像'ng-class ="{'even':$ index%2 == 0}这样的东西"`试图找到一个解决方法而不触及控制器,如果有人知道怎么会喜欢听到它. (2认同)

Yas*_*ser 37

通过搜索类似的东西到达这里.

这对我有用.

{{$index + 1}}
Run Code Online (Sandbox Code Playgroud)

添加+1是因为索引从0开始.