justinvoelker / yii2-separatedpager
一个显示第一页和最后一页与其他页面并列的 Yii2 LinkPager。
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2024-09-14 16:37:36 UTC
README
一个显示第一页和最后一页与其他页面并列的 Yii2 LinkPager。
相比于在 LinkPager 中单独设置“第一页”和“最后一页”按钮,分离的分页器 会显示一组标准的页面链接,但始终会包含第一页和最后一页作为第一页和最后一页的链接。不再有专门的“第一页”/“最后一页”按钮,也不再需要猜测总共有多少页。
安装
安装扩展
安装此扩展的首选方式是通过 composer。
运行以下命令之一:
php composer.phar require --prefer-dist justinvoelker/yii2-separatedpager "*"
或者
"justinvoelker/yii2-separatedpager": "*"
将其添加到您的 composer.json
文件的 require 部分。
用法
只需将 pager
属性添加到您的 GridView 中,并引用此类
GridView::widget([ 'dataProvider' => $dataProvider, ... 'pager' => [ 'class' => 'justinvoelker\separatedpager\LinkPager', ] ]);
请注意,指定少于 7 页将不会产生有用的结果。少于 7 页的内容是可以接受的(看起来像标准的 LinkPager),但将分页器限制在少于 7 页将看起来和工作得不好。五页时分页器几乎毫无价值。少于 5 页则毫无价值。
可用选项
除了所有的标准 LinkPager 属性外,还增加了一个新的属性 separator
,用于指定用于表示省略多个页面的字符串。默认分隔符是 ...
。
这是我的首选分页器设置。最多 7 页,'Previous' 和 'Next' 按钮上有文字,在超小屏幕上隐藏。
'pager' => [ 'class' => 'justinvoelker\separatedpager\CustomLinkPager', 'maxButtonCount' => 7, 'prevPageLabel' => 'Previous', 'nextPageLabel' => 'Next', 'prevPageCssClass' => 'prev hidden-xs', 'nextPageCssClass' => 'next hidden-xs', 'activePageAsLink' => false, ]
请注意,设置 CSS 类会覆盖默认值而不是附加到它们。如果应该包含额外的类(如上面的 'hidden-xs'),则应包括原始的 prev
和 next
(这与标准 LinkPager 的功能相同)。
标准的 LinkPager 功能使用链接来显示活动页面。通过将 activePageAsLink
设置为 false,可以用看起来相同但无法点击的 span 替换链接。