@thunderstorefront/thunder
Version:
## Commands
23 lines (18 loc) • 482 B
text/typescript
interface UsePagination {
setPage: (page: number) => Promise<void>;
getPage: () => number;
}
export function usePagination(): UsePagination {
const route = useRoute();
const router = useRouter();
async function setPage(page: number): Promise<void> {
await router.push({ query: { ...(route?.query || {}), page } });
}
function getPage(): number {
return parseInt(route.query?.page?.toString() || '', 10) || 1;
}
return {
setPage,
getPage
};
}