2016-12-01 2 views
2

Я Я попытался с помощью нг скрытия и нг-шоу, чтобы показать один другой столбец, когда vm.allRecords устанавливаются истина:Как скрыть столбцы ng-table?

<table ng-table="vm.tableParams" ng-hide="vm.noRecords || vm.DashboardService.loading"> 
    <tr ng-repeat="record in $data"> 
     <td title="'Title'" sortable="'title'" class="title"> 
      <a ng-href="{{vm.baseUrl}}#entity/displayEntity?entityId={{record.entityId}}" target="_blank"> 
       {{record.title}} 
      </a> 
     </td> 
     <td title="'Date Created'" sortable="'createdDate'" class="date">{{record.createdDate}}</td> 
     <td title="'Last Modified'" sortable="'lastModified'" class="date">{{record.lastModified}}</td> 
     <td title="'Notebook Descriptor'" sortable="'notebookDescription[0]'" class="description"> 
      <ul> 
       <li ng-repeat="description in record.notebookDescription">{{description}}</li> 
      </ul> 
     </td> 
     <td title="'Witness'" sortable="'witnesses[0].display'" class="witness" ng-hide="vm.allRecords"> 
      <ul> 
       <li ng-repeat="witness in record.witnesses">{{witness.display}}</li> 
      </ul> 
     </td> 
     <td title="'Due Date'" sortable="'dueDate'" class="date" ng-hide="vm.allRecords">{{record.dueDate}}</td> 
     <td title="'Status'" sortable="'status'" class="status" ng-show="vm.allRecords">{{record.status}}</td> 
    </tr> 
</table> 

но клетка в заголовке не скрыты. Я также пытаюсь использовать custom th, используя это:

<tr> 
    <th>Title</th> 
    <th>Date Created</th> 
    <th>Last Modified</th> 
    <th>Notebook Descriptor</th> 
    <th ng-hide="vm.allRecords">Witness</th> 
    <th ng-hide="vm.allRecords">Due Date</th> 
    <th ng-show="vm.allRecords">Status</th> 
</tr> 

Это работает, но у меня нет сортировки. Как скрыть столбцы и отсортировать?

+1

Включите jsfiddle. Я думаю, что вы делаете наоборот, вот почему это не работает – yBrodsky

+1

@yBrodsky здесь скрипка https://jsfiddle.net/39wcrt02/ – jcubic

ответ

2

Я изменил ng-show/ng-hide на ng-if и он работает.

+0

Чтобы завершить ответ, вариант, который отвечает самым большим ожиданиям вопроса, будет ng- если, поскольку он специально скрывает столбец, в то время как ng-hide или ng-show не скрывают

Смежные вопросы