0

Я использую ui-bootstrap pagination, и я хочу скрыть элементы управления разбиением на страницы, когда все результаты содержатся на одной странице. Как вы можете видеть на рисунке ниже, есть только одна страница, и элементы управления все еще отображаются. Похоже, было бы здравым смыслом для команды ui-bootstrap включить это изначально в рамки. Поэтому я думаю, что может быть способ сделать это легко, но я не знаю, с чего начать.AngularJS - ui-bootstrap pagination. Скрыть кнопки на одной странице

enter image description here

Вот код в контроллере:

$scope.itemsPerPage = 5; 
$scope.currentPage = 1; 
$scope.maxSize = 4; 

Вот это HTML:

<div ng-controller="observedCars"> 
    <div ng-repeat="obv in observed['Observed CARs'] | startFrom:(currentPage - 1) * itemsPerPage | limitTo: itemsPerPage"> 
    <div class="carId">{{ obv['Display Name'] }}</div> 
    </div> 
    <ul uib-pagination total-items="observed['Observed CARs'].length" ng-model="currentPage" items-per-page="itemsPerPage" ng-change="pageChanged()" max-size="maxSize"></ul> 
</div> 

Я надеюсь, что кто-то уже сделал это то же самое, и может Помогите.

Заранее спасибо.

+0

использования данных-нг-шоу для уль тега, как

    ответ

    2

    использование данных нг-шоу для уль тега как

    <ul uib-pagination total-items="observed['Observed CARs'].length" data-ng-show="observed['Observed CARs'].length > itemsPerPage" ng-model="currentPage" items-per-page="itemsPerPage" ng-change="pageChanged()" max-size="maxSize"></ul> 
    
    +0

    Aaahhhh, который сделал это! Спасибо Спасибо спасибо. Я только что узнал что-то новое. :) – agon024

    0

    Вы можете сделать это вручную путем добавления нг скрытия:

    <div ng-controller="observedCars"> 
        <div ng-hide="observed['Observed CARs'].length == 1" ng-repeat="obv in observed['Observed CARs'] | startFrom:(currentPage - 1) * itemsPerPage | limitTo: itemsPerPage"> 
        <div class="carId">{{ obv['Display Name'] }}</div> 
        </div> 
        <ul uib-pagination total-items="observed['Observed CARs'].length" ng-model="currentPage" items-per-page="itemsPerPage" ng-change="pageChanged()" max-size="maxSize"></ul> 
    </div> 
    

    Это, вероятно, не самый лучший способ сделать это и, возможно, UI-самозагрузку есть способ, чтобы исправить это, но я не мог найти его либо.

    В любом случае, этот способ угловой проверяет, существует ли только один элемент, если длина не равна 1, он скроет div так же, как это делает, когда ng-repeat пуст.

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