angular / angular/components

[Paginator] Add jump-to-page functionality

Open
#7,615 34 comments 43 reactions 0 assignees View on GitHub
area: material/paginator feature P3
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

#### Bug, feature request, or proposal:
Feature request

#### What is the expected behavior?
To be able to jump to a specific page using a dropdown populated with page numbers. The dropdown should be next in line after the `Items per page` dropdown, so you can choose the page size and then the page number you want to go to.

Don't know if the following part is smart, but in use cases where the page number is large, a `step` input can be implemented. If the total number of pages is 500, and the step is 5, the `Page number` dropdown would hold only pages 1, 5, 10, 15, 20 .... so the user can get to the desired page in as little scrolling and as few clicks as possible.

#### What is the current behavior?
To get to a specific page you have to go page by page

#### What is the use-case or motivation for changing an existing behavior?
In my case, I have a 100 item per page list, that has 3500 total items sorted by date and the users land at the last page. If the users wants to check the items that were added at the beginning of the year, they know that they should be looking at items from 1 to at least 300, so that is 32 clicks to get to the desired items. As the total page count gets bigger, the harder it is to get to the last pages (first pages in my case).

Contributor guide

Open the contributing guide

Research direction

Start at the Angular paginator entry point and inspect how the existing Items per page dropdown is rendered and connected to page navigation. Review the requested page-number dropdown, its placement, and the optional step behavior; done means users can select a specific page directly without advancing page by page.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.