Пагінація

загальні властивості:

perPage - ліміт записів на сторінці. Кількість записів чи об'єктів, які повинні бути включені на кожній сторінці

page - номер поточної сторінки, яку переглядає користувач

totalItems - загальна кількість записів чи об'єктів у всьому наборі даних

totalPages - загальна кількість сторінок, яка визначається за формулою Math.ceil(totalItems / perPage)

hasPreviousPage - прапор, який вказує, чи є для поточного запиту попередня сторінка

hasNextPage - прапор, який вказує, чи є для поточного запиту наступна сторінка

Створення пагінації

Під час створення бекенду ми не можемо довіряти всьому, що надсилає нам клієнт (фронтенд). Він може вислати невалідні значення або взагалі про них забути. Тому ми маємо обов’язково створити логіку парсингу параметрів пошуку. Функція parseNumber призначена для перетворення рядкових значень в числа і є особливо корисною в контекстах, де ми не можемо бути впевнені у типі даних, що надходять. Вона приймає два параметри: number, що є значенням для перетворення, та defaultValue, яке використовується як запасне, якщо перетворення неможливе.