2

私は角度のページネーションのためのカスタムテンプレートを使用しています:角度ページネーションのカスタムテンプレートに値を割り当てる方法は?

  <uib-pagination 
       boundary-links="(vm.pagination.boundaryLinks == false) ? false : true" 
       num-pages="vm.pagination.numPages" 
       total-items="vm.pagination.totalItems" 
       items-per-page="vm.pagination.itemsPerPage" 
       ng-model="vm.pagination.currentPage" 
       max-size="(vm.pagination.pager == true) ? 0 : 10" 
       template-url="pagination.html"    
       ng-change="vm.pagination.pageChanged(vm.pagination)"> 
      </uib-pagination> 

<script id="pagination.html" type="text/ng-template"> 
    <ul class="pagination"> 
    <li ng-class="{disabled: noPrevious()}"><a href ng-click="selectPage(1)" title="First Page"> {{'FIRST' | translate}}</a></li> 
    <li ng-class="{disabled: noPrevious()}"><a href ng-click="selectPage(page - 1)" title="Previous Page">{{'PREVIOUS' | translate}}</a></li> 
    <li ng-repeat="page in pages track by $index" ng-class="{active: page.active}"><a href ng-click="selectPage(page.number)">{{page.text}}</a></li> 
    <li ng-class="{disabled: noNext()}"><a href ng-click="selectPage(page + 1)" title="Next Page">{{'NEXT' | translate}}</a></li> 
    <li ng-class="{disabled: noNext()}"><a href ng-click="selectPage(vm.pagination.numPages)" title="Last Page">{{'LAST' | translate}}</a></li> 
    </ul> 
</script> 
<pre>Total: {{vm.pagination.numPages}}</pre> 

それがうまく表示:

enter image description here

を問題がLastボタンです。クリックすると、最後のページにスキップされません。私はこのng-click="selectPage(11)のように直接値を代入してLastボタンをクリックした場合しかし、それはvm.pagination.numPagesは値11を含んでいます、最後のページ上の最後のコードでは11

にジャンプします。

enter image description here

誰もがこれで私を助けることができますか?前もって感謝します。

答えて

1

ページネーションテンプレートには隔離されたスコープがあり、したがって、vmについては何も知りません。代わりにselectPage(totalPages)を試してください

+0

ありがとうございました。それは働いた。あなたは 'totalPages' btwについてどのように知っていますか? https://angular-ui.github.io/bootstrap/#/paginationのdocを参照してください。 'totalPages'キーワードについては何もありません。 – sg552

+1

私は角度のあるブートストラップのページネーションを使った経験があるので、ソースコードを一見しました –

関連する問題