Laravel项目中AdminLTE+Bootstrap分页按钮多余SVG图标问题求助
解决Laravel+AdminLTE分页按钮出现SVG箭头的问题
问题根源
Laravel 8及以上版本默认使用Tailwind CSS风格的分页视图,会自动渲染带SVG箭头的按钮,而AdminLTE基于Bootstrap,需要切换到Bootstrap风格的分页模板才能匹配样式。
具体解决步骤
发布Laravel分页模板文件
先把Laravel内置的Bootstrap分页模板发布到本地,方便修改:php artisan vendor:publish --tag=laravel-pagination执行后,
resources/views/vendor/pagination目录下会生成多个分页模板,找到对应Bootstrap版本的文件(比如AdminLTE3对应bootstrap-4.blade.php)。修改模板,移除SVG箭头
打开bootstrap-4.blade.php,找到两处按钮代码块修改:- 「Previous」按钮部分:
原代码带SVG箭头,直接删掉SVG标签,只保留文字:<li class="page-item {{ $paginator->onFirstPage() ? 'disabled' : '' }}"> <a class="page-link" href="{{ $paginator->previousPageUrl() }}" rel="prev"> {{ __('pagination.previous') }} </a> </li> - 「Next」按钮部分同理,删掉对应的SVG代码,仅保留
{{ __('pagination.next') }}文字。
- 「Previous」按钮部分:
确保使用Bootstrap分页视图
- 单页面生效:渲染分页时手动指定模板
{{ $distributorStock->links('vendor.pagination.bootstrap-4') }} - 全局生效:打开
App\Providers\AppServiceProvider.php,在boot方法添加:use Illuminate\Pagination\Paginator; public function boot() { // 设置默认分页视图 Paginator::defaultView('vendor.pagination.bootstrap-4'); // 同步设置简洁分页视图(可选) Paginator::defaultSimpleView('vendor.pagination.simple-bootstrap-4'); }
这样所有分页都会自动使用Bootstrap风格模板,无需每次手动指定。
- 单页面生效:渲染分页时手动指定模板
补充说明
之前检查bootstrap-4模板无效,大概率是因为Laravel默认加载的是Tailwind风格视图(tailwind.blade.php),而非Bootstrap模板,修改正确模板并指定使用后即可解决问题。
内容的提问来源于stack exchange,提问作者TechErrorNR
相关产品推荐
相关产品推荐

