У меня есть следующий массив в моем модуле в Angular.js
:Использование нг-повтора в табличном формате
$scope.hsbody = []; //Data array
$scope.hsresult = []; //Data array
$scope.hsProcess = []; //Boolean array
$scope.hssuccess = []; //Boolean array
$scope.hsfailure = []; //Boolean array
$scope.hsExpand = []; //Boolean array
$scope.hsExpandUser = []; //Boolean array
Я хочу, чтобы показать элементы массива в моей странице HTML:
hsresult
hsbody
hsresult
hsbody
and so on..
Так что я следующее:
<div>
<pre>
<table class="table table-condensed">
<tr ng-repeat="hs in hsbody track by $i" ng-show="hsProcess[i] && !hssuccess[i] && !hsfailure[i]" class="warning"><td><div class="glyphicon"></div>{{hsbody}}</td></tr>
<tr ng-show="hssuccess" ng-repeat="highstate in hsbody track by $i" class="success"><td><div class="glyphicon" ng-show="!hsExpand[i]"></div><div class="glyphicon" ng-show="hsExpand[i]"></div>{{ hsresult[i] }} </td></tr>
<tr ng-show="hsfailure" ng-repeat="hs in hsbody track by $i" class="danger"><td><div class="glyphicon" ng-show="!hsExpand"></div><div class="glyphicon" ng-show="hsExpand[i]"></div>{{ hsresult[i] }}</td></tr>
<tr ng-repeat="hs in hsbody track by $i" ng-show="(hsProcess[i] && hsExpand[i]) || (hsExpand[i] && hsfailure[i])" class="active"><td><pre>{{ hsbody[i] }}</pre></td></tr>
</table>
</pre>
</div>
Проблема в том, что в моем HTML ничего не отображается. но когда я избавлюсь от ng-repeat
и использую i=0
, тогда я вижу значения.
Похоже, что я не правильно использую ng-repeat
, но я не знаю, где я ошибся.
whats '$ i' в пути? –
@ K.Торесс: Не могли бы вы прояснить вопрос? Я пытаюсь сделать все элементы в hsbody и перебрать их с помощью индекса '$ i'. Я знаю, что 'hsbody.length = hsresult.result = hsProcess.length = и т. Д., Поэтому я использую значение' $ i' для каждого из массивов. – MiddleWare
Почему вы просто не правильно реорганизуете данные в контроллере? Это то, что я думаю, вам следует делать. – Wio