Return 使用函数 angularJS 在 ng repeat 中增加 ng repeat
Return increment ng repeat in ng repeat with function angularJS
我在另一个 ng-repeat 中有一个 ng-repeat,我需要能够获取所有记录的全局计数。
我试过在 ng-repeat 的视图中声明一个变量,这样它会添加但不起作用。
我目前有以下代码。
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{id}}
<br />
</div>
</div>
</div>
</body>
代码Angular
$scope.count=function(){
number = number + 1;
$scope.id=number;
}
我需要每个 ng-repeat 查询给我带来它所在的数字位置。
Example:
Name 1 ITEM 1 - Position 1
ITEM 2 - Position 2
Name 2 ITEM 1 Position 3
ITEM 2 - Position 4
Name 3 ITEM 1 - Position 5
ITEM 2 - Position 6
您应该可以为此使用 ngInit。
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController" ng-init="totalCount = 1">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-repeat="dato in data track by $index" ng-init="position = totalCount++">
<span>{{dato.name}}</span>
<br> Position {{position}}
<br />
</div>
</div>
</div>
</body>
您可以 return 来自控制器的全局计数器并将其分配给每个 ngInit
of nested ngRepeat
上的范围变量,例如:
// Code goes here
angular.module('app', [])
.controller('quotesController',
function quotesController($scope) {
$scope.datos2 = [{
"name": "Name 1",
}, {
"name": "Name 2",
}, {
"name": "Name 3",
}
];
$scope.data = [{
"name": "ITEM 1",
}, {
"name": "ITEM 2",
}];
var number = 1;
$scope.count = function(){
return number++;
}
});
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='id = count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{id}}
<br />
<br>
</div>
</div>
</div>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js"></script>
您可以使用{{($parent.$index*data.length)+($index+1)}}
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{($parent.$index*data.length)+($index+1)}}
<br />
<br>
</div>
</div>
我在另一个 ng-repeat 中有一个 ng-repeat,我需要能够获取所有记录的全局计数。
我试过在 ng-repeat 的视图中声明一个变量,这样它会添加但不起作用。
我目前有以下代码。
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{id}}
<br />
</div>
</div>
</div>
</body>
代码Angular
$scope.count=function(){
number = number + 1;
$scope.id=number;
}
我需要每个 ng-repeat 查询给我带来它所在的数字位置。
Example:
Name 1 ITEM 1 - Position 1
ITEM 2 - Position 2
Name 2 ITEM 1 Position 3
ITEM 2 - Position 4
Name 3 ITEM 1 - Position 5
ITEM 2 - Position 6
您应该可以为此使用 ngInit。
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController" ng-init="totalCount = 1">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-repeat="dato in data track by $index" ng-init="position = totalCount++">
<span>{{dato.name}}</span>
<br> Position {{position}}
<br />
</div>
</div>
</div>
</body>
您可以 return 来自控制器的全局计数器并将其分配给每个 ngInit
of nested ngRepeat
上的范围变量,例如:
// Code goes here
angular.module('app', [])
.controller('quotesController',
function quotesController($scope) {
$scope.datos2 = [{
"name": "Name 1",
}, {
"name": "Name 2",
}, {
"name": "Name 3",
}
];
$scope.data = [{
"name": "ITEM 1",
}, {
"name": "ITEM 2",
}];
var number = 1;
$scope.count = function(){
return number++;
}
});
<body ng-app="app">
<div class="table-responsive" ng-controller="quotesController">
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='id = count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{id}}
<br />
<br>
</div>
</div>
</div>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js"></script>
您可以使用{{($parent.$index*data.length)+($index+1)}}
<div ng-repeat="info in datos2 track by $index">
<h2><strong>{{info.name}}</strong></h2>
<div ng-init='count()' ng-repeat="dato in data track by $index">
<span>{{dato.name}}</span>
<br> Position {{($parent.$index*data.length)+($index+1)}}
<br />
<br>
</div>
</div>