Pagination
Komponen NexaPagination menghasilkan HTML navigasi halaman (First, Previous, angka, Next, Last). Di controller, akses lewat $this->NexaPagination() — magic method __call pada NexaController yang memuat komponen terdaftar di NexaUI.
NexaController NexaPagination NexaUI · render assignVar
Akses dari controller
Panggilan $this->NexaPagination() mengembalikan instance App\System\Components\NexaPagination jika nama komponen pagination terdaftar di NexaUI. Hanya method yang diawali Nexa yang diproses oleh __call.
render($current, $total, $baseUrl)
$current— halaman aktif (bilangan bulat).$total— jumlah halaman terakhir (last_page).$baseUrl— awalan URL; nomor halaman disambung langsung di akhir string (mis. link halaman 3 =$baseUrl . '3').
Selalu sesuaikan $baseUrl dengan query string atau path yang dipahami router Anda (filter, sort, segment pages/, dll.).
if (!empty($requestParams['categori'])) {
$baseUrl = $params['page_index'] . "?sort=" . $requestParams['sort']
. "&categori=" . $requestParams['categori'] . "&pages/";
} else {
$baseUrl = $params['page_index'] . "/pages/";
}
$paginationHTML = $this->NexaPagination()->render(
$searchResults['current_page'],
$searchResults['last_page'],
$baseUrl
);
$this->assignVar('pagination', $paginationHTML);Data numerik tambahan (total record, dll.) bisa dikirim lewat assignVars seperti kebutuhan template Anda.
Di template
Tempatkan variabel yang sudah di-assignVar:
{pagination}Perilaku singkat
- Jika
$total <= 1,rendermengembalikan string kosong (tidak ada markup). - Jika
$current,$total, atau$baseUrldianggap kosong oleh PHP (empty), dikembalikan<div class="pagination-error"></div>. - Setiap pemanggilan
rendermenyimpan snapshot ke sesi (page-link) lewatNexaSession— berguna untuk komponen lain yang membaca halaman aktif. - Markup memakai
class="pagination"danclass="page-link"(aktif:page-link active).
Method pembantu (opsional)
Pada instance yang sama: getCurrentPageFromSession(), getCurrentPageNumber(), getCurrentPageUrl(), clearPageSession() — membaca atau menghapus data page-link di sesi.
Lanjut
Sebelumnya: Loops & blok. Berikutnya: Search keyword. Indeks Helper · Dokumentasi · Beranda.