У меня есть следующий массив, объявленный в моем js файле
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.name = 'Superhero';
$scope.tempArr = [
["block A1", "block B1", "block C1"],
["block A2", "block B2", "block C2"]
];
}
И теперь, в угловом, я хочу перебрать этот массив и напечатать результат, например
block A1 block B1 block C1
block A2 block B2 block C2
Я использовал для печати, используя:
<div ng-controller="MyCtrl">
<div>
<div ng-repeat="row in tempArr">
<input type="text" value="{{row[$index]}}">
<input type="text" value="{{row[$index+1]}}">
<input type="text" value="{{row[$index+2]}}">
</div>
</div>
</div>
Но он не печатает блок A2. Как я могу решить эту проблему?
вставьте ng-repeat
так,
<div ng-repeat="row in data">
<div ng-repeat="col in row">
// do stuff here
</div>
</div>
или вы можете сгладить массив 2d до одного нового массива и использовать один ng-repeat
Получите вложенные ng-повторы для глубокого перемещения массивов следующим образом:
<div ng-repeat="row in tempArr">
<div ng-repeat="col in row">
<input type="text" value="{{col}}">
</div>
</div>