AngularJS - нумерация страниц ui-bootstrap показывает, что больше результатов не работает

Я не могу заставить свой раскрывающийся список «показать больше результатов» для работы с ui-bootstrap. У меня это работает с нумерацией страниц, но не с начальной загрузкой. Что мне просто нужно, так это то, что когда они выбирают 10 из раскрывающегося списка, я хочу, чтобы он отображал десять результатов. Простой не так ли? Не для меня видимо. :()

Вот мой HTML:

// Show more results
<select ng-model="pageSize" id="pageSize" class="form-control searchShowMore">
  <option ng-selected="true" value="5">5</option>
  <option value="10">10</option>
</select>

<div ng-repeat="res in details.Results | startFrom:(currentPage - 1) * pageSize | limitTo: pageSize" class="myCar">

  <div class="carId">{{ res['Display Name'] }}</div>
  <div class="title">{{ res['Project Title'] }}</div>
  <h4><u>Amount</u></h4>
  <div class="modified">${{ res.Amount | number: 2 }}</div>
</div>

<ul uib-pagination total-items="details.Results.length" ng-model="currentPage" items-per-page="pageSize"></ul>

Прямо сейчас он просто отображает все результаты, если я не добавлю $scope.pageSize = 5; в контроллер. Я полагал, что это будет работать так же, как разбиение на страницы, но я явно ошибаюсь. :)

Следует также отметить, что сначала загружаются только все данные. Как только я щелкаю раскрывающийся список и выбираю 5, он меняет элементы на странице, чтобы отображать только 5. Это только начальная загрузка, когда отображаются все данные. Я думаю, что это как-то связано с параметром выбора, который имеет значение ng-selected="true" = "5". Он не захватывает начальное значение в начале

Кто-нибудь знает, возможно ли это с нумерацией страниц ui-bootstraps?


person agon024    schedule 16.08.2016    source источник


Ответы (1)


Делай эти вещи,

  1. Удалите startFrom и limitTo в файле ng-repeat. uib-pagination автоматически позаботится об этом.
  2. Установите select ng-модель как ng-model="pageSize" и items-per-page="pageSize" для uib-pagination
  3. ng-model из uib-pagination это currentPage. Не устанавливайте его на pageSize.
person naveen    schedule 16.08.2016
comment
Поэтому я удалил startFrom и limitTo из файла ng-repeat. Выбранная ng-модель уже была установлена ​​​​на pageSize, поэтому я оставил ее в покое. Я изменил ng-модель uib-pagination с pageSize на currentPage. Но он по-прежнему просто перечисляет все результаты вниз по странице. - person agon024; 17.08.2016
comment
у вас есть фрагмент плунжера? - person naveen; 17.08.2016
comment
Нет. Входящие данные поступают из API. Выпадающий список работает и меняет количество отображаемых элементов. Просто при первой загрузке он показывает все результаты, поэтому я думаю, что это как-то связано с параметром выбора, который имеет значение ng-selected=true=5. Он не захватывает начальное значение в начале. - person agon024; 17.08.2016