我想写:
文字文字
1 我的问题是真的
2 我的问题是真的
文字文字
3 我的问题是真的
4 我的问题是真的
5 我的问题是真的
文字文字
6 我的问题是真的
7 我的问题是真的
PathPatch
我用$ index + 1:1 2 1 2 3 1 2
进行测试我用$ parent测试。$ index + 1:1 1 2 2 2 3 3
但我想1 2 3 4 5 6 7 ...
答案 0 :(得分:2)
您可以向前传递前一个循环的length
并将其添加到下一个$index
。像这样:
<div ng-init="lastLength=[]">
<span ng-repeat="step in steps" ng-init="lastLength[$index]=step.questions.length">
<b>{{step.statement}}</b><br>
<span ng-repeat="question in step.questions" style="padding-left:50px;">
<b>{{lastLength[$parent.$index-1]+$index+1}}</b> {{question.question}} {{question.response}}<br>
</span>
</span>
</div>
工作示例:
var app = angular.module('xApp', []).controller('xCtrl', function($scope) {
$scope.steps = [{
statement: 'St 1',
questions: [{
question: 'q 1',
response: 'rs 1'
}, {
question: 'q 2',
response: 'rs 2'
}]
}, {
statement: 'St 2',
questions: [{
question: 'q 4',
response: 'rs 4'
}, {
question: 'q 5',
response: 'rs 5'
}, {
question: 'q 6',
response: 'rs 6'
}]
}]
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="xApp" ng-controller="xCtrl" ng-init="lastLength=[]">
<span ng-repeat="step in steps" ng-init="lastLength[$index]=step.questions.length">
<b>{{step.statement}}</b><br>
<span ng-repeat="question in step.questions" style="padding-left:50px;">
<b>{{lastLength[$parent.$index-1]+$index+1}}</b> {{question.question}} {{question.response}}<br>
</span>
</span>
</div>
&#13;