Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

bug(virtual-scroll): scrollToIndex on viewport while inside cdkVirtualScrollingElement is wrong

Offen
#33,063 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
64/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
angular, typescript
Bereich
frontend

Rechercherichtung

Beginne mit der CDK-Implementierung des Viewports für virtuelles Scrollen und dem Einstiegspunkt scrollToIndex und vergleiche anschließend sein Verhalten mit measureViewportOffset('top') in der bereitgestellten StackBlitz-Reproduktion. Überprüfe die Änderung mit den Fällen regular viewport und cdkVirtualScrollingElement: Beim Scrollen zu Element 50 sollte in beiden Abschnitten Element 50 ausgewählt werden, auch mit dem 100px-Header-Offset.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

area: cdk/scrolling gemini-triaged P3
Is this a regression?
  • Yes, this behavior used to work in the previous version
The previous version in which this bug was not present was

No response

Description

When scrolling by index using scrollToIndex on the viewport it doesn't take into account any content around the viewport when using cdkVirtualScrollingElement.
The logic calculates the offset only based on the itemSize without taking into account the viewport offset.

Reproduction

StackBlitz link: https://stackblitz.com/edit/qmx1v9bc
Steps to reproduce:

  1. In the Regular section clicking on the button Scroll to item 50 correctly scrolls to item 50. This is a regular viewport without cdkVirtualScrollingElement.
  2. In the With cdkVirtualScrollingElement section clicking on the button Scroll to item 50 (not working) it scrolls to item 48 instead of 50 as there is a 100px header above the viewport while it should scroll to item 50.
  3. If the button Scroll to item 50 (fixed) is clicked the scrolling works as expected as I calculate the offset myself using viewport.measureViewportOffset('top') which is missing in scrollToIndex.
Expected Behavior

It should scroll to the correct item when using cdkVirtualScrollingElement

Actual Behavior

It scrolls without taking into account the viewport offset.

Environment
  • Angular: 21.2.6
  • CDK/Material: 21.1.2
  • Browser(s): Chrome 146
  • Operating System (e.g. Windows, macOS, Ubuntu): Windows 11
Vorherrschende Sprache
TypeScript
Sterne
25k
Forks
6.8k
Ø Merge
1 T. 7 Std.
Gemergte PRs (30 T.)
92

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus angular/components

Alle Issues in angular/components

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.