我目前正在使用Laravel 5.3,并想知道是否有自定义三点分离器的选项. (跳过第9-10页,这是迟到的)
目前,如果有超过11页,则会启动三个点…如果您的站点具有响应性,则不安静.如果有很多页面,那么它会分成2行.
我找不到有关$resource-> links()的选项的任何信息.但如果有请告诉我!非常感激.
编辑:它与以下功能有关:
vendor / laravel / framework / src / Illuminate / Pagination / LengthAwarePaginator.php(page:128,render()).当前函数不支持第二个变量.所以我想我必须重建它?
最佳答案 添加到先前的响应,一旦使用artisan命令生成供应商视图文件php artisan vendor:publish您可以在该文件夹中创建一个新文件,并将其称为custom.blade.php,并输入以下代码:
@if ($paginator->hasPages())
<ul class="custom-pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="disabled pageNumber"><span>« Prev</span></li>
@else
<li><a class="pageNumber" href="{{ $paginator->previousPageUrl() }}" rel="prev">«</a></li>
@endif
{{-- Pagination Elements --}}
@foreach ($elements as $element)
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page === $paginator->currentPage())
<li class="active pageNumber"><span>{{ $page }}</span></li>
@elseif (($page === $paginator->currentPage() + 1 || $page === $paginator->currentPage() + 2)
|| $page === $paginator->lastPage())
<li><a class="pageNumber" href="{{ $url }}">{{ $page }}</a></li>
@elseif ($page === $paginator->lastPage()-1)
<li class="disabled"><span>...</span></li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page Link --}}
@if ($paginator->hasMorePages())
<li><a class="pageNumber" href="{{ $paginator->nextPageUrl() }}" rel="next">Next »</a></li>
@else
<li class="disabled pageNumber"><span>Next »</span></li>
@endif
</ul>@endif
三个点的代码的重要部分在{{ – Array Of Links – }}部分.我认为这或多或少可以满足您的需求,但可能需要进一步调整.
然后你可以在你的视图中使用它,如下所示:
<div class="pagination">
@if ($users instanceof \Illuminate\Pagination\LengthAwarePaginator)
{{ $users->links('vendor.pagination.custom') }}
@endif
</div>