如何为 angular 分页自定义模板赋值?
How to assign value to angular pagination custom template?
我正在为 angular 分页使用自定义模板:
<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>
显示效果不错:
问题出在 Last
按钮上。当我点击它时,它不会跳到最后一页。但是如果我像这样直接赋值 ng-click="selectPage(11)
然后点击 Last
按钮,它会跳到最后一页 11.
对于上面的最后一个代码,vm.pagination.numPages
确实包含值 11
。
谁能帮我解决这个问题?提前致谢。
您的分页模板具有隔离范围,因此对 vm
一无所知。尝试 selectPage(totalPages)
而不是
我正在为 angular 分页使用自定义模板:
<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>
显示效果不错:
问题出在 Last
按钮上。当我点击它时,它不会跳到最后一页。但是如果我像这样直接赋值 ng-click="selectPage(11)
然后点击 Last
按钮,它会跳到最后一页 11.
对于上面的最后一个代码,vm.pagination.numPages
确实包含值 11
。
谁能帮我解决这个问题?提前致谢。
您的分页模板具有隔离范围,因此对 vm
一无所知。尝试 selectPage(totalPages)
而不是