В моем проекте у меня есть paginated table в table.html (директива), и у меня есть соответствующий контроллер (table.js).
Пожалуйста, смотрите фрагменты кода из каждого файла.
`======================== table.html ============================
<div class="row">
<div class="col-xs-12">
Search:    <input ng-model="searchText" ng-change="searchChange(searchText)"/>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<table class="table">
<thead>
<tr>
<th></th>
<th class="text-center"><a href='#' ng-click="sortlist('product')">Product</a></th>
<th class="text-center">Service Name</th>
<th class="text-center">Distributor Name</th>
<th class="text-center">Type</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="data in paged_data">
<td class="text-center"><cc-customer-geo geo-code="sku.geoCode"></cc-customer-geo></td>
<td class="text-center">{{data.product}}</td>
<td class="text-center">{{data.ServiceName}}</td>
<td class="text-center">{{data.DistributorName}}</td>
<td>
<div class="text-center" ng-switch="data.type">
<span class="text-center" ng-switch-when="0">Trial</span>
<span class="text-center" ng-switch-when="1">Licensed</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="col-xs-12">
<my-paged-data input-data="input_data_list" paged-data="paged_data"></my-paged-data>
</div>
<div class="col-xs-12 text-center" ng-if="isdataLoading">
<cc-loading is-loading="isdataLoading" error="DataLoadirror"></cc-loading>
</div>
</div>
`================================= my-paged-data.html ====================================
<uib-pagination total-items="getTotalItemsCount()"
max-size="pagingSettings.maxSize"
first-text="<<"
previous-text="<"
next-text=">"
last-text=">>"
boundary-links="true"
items-per-page="pagingSettings.recordsPerPage"
ng-show="isPagingVisible()"
ng-model="pageNumber"
ng-change="setPage(pageNumber)">
</uib-pagination>
==========================================================================
В настоящее время, когда я щелкаю заголовок столбца таблицы HTML Product
метод sortlist()
в table.js
вызывается, но данные в таблице не сортируются, пока я не нажму на вкладки нумерации страниц один раз.В серверной части он сортируется, но setPage(pageNumber)
нужно вызвать один раз (присутствует в my-paged-data.js
контроллер JS).
Я хочу как-то вызвать метод setPage(pageNumber)
, который присутствует в my-paged-data.js контроллер изнутри функции sortlist
, присутствующей в файле table.js
.
Возможно ли это?Если нет, то какой подход я должен использовать, чтобы просмотреть отсортированные данные сразу, когда я щелкну по заголовку столбца, внеся изменения только в table.html
и table.cs
.