У меня есть * ngFor, который создает панели, которые хранят таблицы. В таблицах есть * ngFor, которые создают <td>
для каждого элемента в наборе данных.Угловая 2 - Скрыть панель со столом, когда таблица пуста
Иногда таблица будет иметь нулевые строки. Есть ли разумный способ использования Angular, чтобы скрыть панель, а таблица не имеет детей? Я могу, вероятно, использовать jQuery для проверки загрузки детей, но я чувствую, что должен быть более интуитивный ответ, используя Angular * ngFor.
<div class="col-md-12 col-lg-6 cell-box" *ngFor="let siteGroup of sqlData | FilterData:[currentDate, selectedGroup] | UniqueValue:['Site']">
<!-- SD Data -->
<div class="panel panel-midblue">
<div class="panel-heading">
<span>{{selectedGroup}} - {{siteGroup}}</span>
</div>
<div class="panel-body">
<table class="exportTable table table-hover table-condensed">
<thead>
<th>Metric Name</th>
<th>Daily   </th>
<th>Week to Date</th>
<th>Month to Date</th>
<th>Year to Date</th>
</thead>
<tr *ngFor="let item of sqlData | FilterData:[currentDate, selectedGroup, siteGroup, selectedType] | OrderBy:['MetricName',['Volume','TSF', 'ASA','AHT', 'ACW', 'ABAN', 'FCR']]" [attr.goalvalue]="item.DayMetGoal">
<td>{{item.MetricName}}</td>
<td class="cursor-hand" [attr.goalvalue]="item.DayMetGoal" (click)="ModalPopUp($event, item)">{{item.DayMetricValue | FormatMetric:item.MetricName }}</td>
<td class="cursor-hand" [attr.goalvalue]="item.WTDMetGoal" (click)="ModalPopUp($event, item)">{{item.WTDMetricValue | FormatMetric:item.MetricName }}</td>
<td class="cursor-hand" [attr.goalvalue]="item.MTDMetGoal" (click)="ModalPopUp($event, item)">{{item.MTDMetricValue | FormatMetric:item.MetricName }}</td>
<td class="cursor-hand" [attr.goalvalue]="item.YTDMetGoal" (click)="ModalPopUp($event, item)">{{item.YTDMetricValue | FormatMetric:item.MetricName }}</td>
</tr>
</table>
</div>
<div class="panel-footer">
<h5 class="text-muted"></h5>
</div>
</div>
</div>
Я ценю вас указывая метод, используемый, чтобы скрыть в угловых 2. На основании предоставленного кода, как я бы установил переменную, которую я мог бы использовать для проверки. Мне в основном нужно сказать, что если «item» не имеет значения, скройте родительскую панель. –
@Tekk_Know - это sqlData массив объектов? Если это так, вы можете сделать [hidden] = "sqlData.length == 0" – 12seconds
sqlData действительно представляет собой массив объектов. Знаете ли вы, выполнит ли sqlData.length длину после применения фильтрующих труб? –