要自定义 Laravel 分页的样式,你需要遵循以下步骤:
创建自定义分页视图
首先,你需要创建一个新的视图文件来存放自定义的分页样式。在 resources/views
目录下,创建一个新的文件夹(例如:pagination
),然后在该文件夹中创建一个新的视图文件(例如:custom.blade.php
)。
编辑视图文件
接下来,打开 custom.blade.php
文件并添加你想要的自定义分页 HTML 结构。以下是一个简单的自定义分页示例:
@if ($paginator->hasPages())
<nav>
<ul class="pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="disabled"><span>«</span></li>
@else
<li><a href="{{ $paginator->previousPageUrl() }}" rel="prev">«</a></li>
@endif
{{-- Pagination Elements --}}
@foreach ($elements as $element)
{{-- "Three Dots" Separator --}}
@if (is_string($element))
<li class="disabled"><span>{{ $element }}</span></li>
@endif
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page == $paginator->currentPage())
<li class="active"><span>{{ $page }}</span></li>
@else
<li><a href="{{ $url }}">{{ $page }}</a></li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page Link --}}
@if ($paginator->hasMorePages())
<li><a href="{{ $paginator->nextPageUrl() }}" rel="next">»</a></li>
@else
<li class="disabled"><span>»</span></li>
@endif
</ul>
</nav>
@endif
你可以根据需要修改这个视图文件,以实现你想要的分页样式。
paginate()
方法。例如:$users = DB::table('users')->paginate(15);
然后,在你的视图中,使用 links()
方法并传入自定义分页视图的路径。例如:
{{ $users->links('pagination.custom') }}
这将使用你在 custom.blade.php
文件中定义的自定义分页样式来渲染分页链接。
现在,你已经成功地自定义了 Laravel 分页的样式。根据需要调整 custom.blade.php
文件中的 HTML 结构和 CSS 类,以实现所需的外观和交互。