geniv / nette-visualpaginator
此包已被放弃,不再维护。未建议替代包。
Nette Web应用中显示分页器的插件
v1.0.2
2017-03-13 21:27 UTC
Requires
- php: >= 5.6.0
- nette/nette: >= 2.3.0
This package is not auto-updated.
Last update: 2020-01-24 16:27:52 UTC
README
VisualPaginator 是 Nette 框架的一个组件,它提供了一种舒适的方式来渲染长列表的分页组件。
安装
安装此组件的最佳方式是通过 Composer。
$ composer require geniv/nette-visualpaginator
composer.json
"geniv/nette-visualpaginator": ">=1.0",
使用
- VisualPaginator
基本用法
use VisualPaginator; ... /** @var VisualPaginator @inject */ public $visualPaginator; public function renderDefault() // for dibi $items = $this->model->getList(); $items = range(1, 150); $vp = $this->visualPaginator->getPaginator(); $vp->setItemCount(count($items)) ->setItemsPerPage(5); // for dibi $this->template->items = $items->limit($vp->getLength())->offset($vp->getOffset()); // for array $this->template->items = array_slice($items, $vp->getOffset(), $vp->getLength()) } protected function createComponentVisualPaginator() { return $this->visualPaginator; }
高级用法
protected function createComponentVisualPaginator() { return $this->visualPaginator ->setPathTemplate(__DIR__ . '/templates/pagination.latte'); }
或与 Autowire(例如 geniv/nette-autowired)一起使用
use AutowireComponentFactories; use VisualPaginator; protected function createComponentVisualPaginator(VisualPaginator $visualPaginator) { return $visualPaginator; }
从模板调用
{control visualPaginator} or {control visualPaginator, count=>200, perPage=>5}
许可证
新BSD许可证
作者
- Davig Grudl
- Igor Hlina
- Radek Fryšták