Laravel自定义分页样式
????????Laravel 的分頁組件默認為 Bootstrap 的分頁樣式,但如果我們用的并不是 Bootstrap 或者說分頁的 HTML結構不一樣,這時我們需要自定義分頁。其實 Laravel 的分頁組件是非常的靈活,可以通過幾種方法去實現我們的需求。
????????我們可以從 Model 抽象類看到通過使用 Illuminate\Database\Query\Builder 可以查找出paginate 、simplePaginate的實現。然后直接查看 Illuminate\Pagination\BootstrapThreePaginater 可以查找到 render 方法。這方法就是輸出 分頁組件 默認的 html。
????????進一步,可以看到simplePaginate 通過 Illuminate\Pagination\SimpleBootstrapThreePaginater 繼承 Illuminate\Pagination\BootstrapThreePaginater 并對 render 方法進行重寫,由此可見,我們可以通過繼承 BootstrapThreePaginater 類并對 render 方法進行重寫,就可以自定義分頁的樣式了。
方法一:通過繼承
通過替換默認的生成類來修改分頁的自定義樣式:替換 laravel 分頁組件默認生成的模板 出自 Inspirer(https://www.insp.top)。
方法二:通過視圖
該方法主要通過利用 Laravel 提供的方法來實現,主要用到 currentPage()、url( $page )、lastPage()。
第一步
在需要調用分頁的視圖中引入 分頁視圖 ($data 所指的是分頁數據,將它傳去分頁視圖):
@include('pagination.default', ['paginator' => $data])<br/>
第二步
利用通過 第一步 傳遞過來的 $data , 如何去利用呢?
在 resources/views 目錄下創建 pagination 目錄,并創建一個視圖default.blade.php 。添加一下代碼:
$paginator->currentPage():獲取當前頁
$paginator->lastPage():獲取尾頁
$paginator->url($page):獲取頁碼的URL
<br/>
最后的效果:
自定義分頁樣式,可以通過以上方法實現,當然個人建議還是用 方法一 吧,因為方法二 跟寫原生沒什么區別。
總結
以上是生活随笔為你收集整理的Laravel自定义分页样式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用ueditor小结
- 下一篇: JavaScript里的循环方法:for