angular / angular/components

Virtual Scrolling stalls when scrolling via keyboard with large set of complex data

Offen
#14,765 5 Kommentare 7 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: cdk/scrolling P3
Vorherrschende Sprache
TypeScript
Sterne
25k
Forks
6.8k
Ø Merge
1 T. 8 Std.
Gemergte PRs (30 T.)
91

Beschreibung

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

#### What is the expected behavior?
When scrolling down the list by holding down the up or down arrow key, the list should scroll smoothly all the way down to the end

#### What is the current behavior?
When scrolling down the list by holding down the up or down arrow key, at random times and seemingly random circumstances, the scrolling behavior stalls. I believe the focus is being lost on the list for whatever reason as, if you click on the list and press the arrow key, scrolling resumes as normal.

#### What are the steps to reproduce?
StackBlitz [here](https://stackblitz.com/edit/angular-material-yhc71v). Click on the list and press and hold the down arrow key. It may take a couple attempts, but eventually it should stall.

#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Reproduced in Chrome 71.0.3578.98 and IE 11. Could not reproduce in Firefox 64.0.

|Package|Version|
|---|---|
|@angular/animations|7.2.0|
|@angular/cdk|7.2.1|
|@angular/common|7.2.0|
|@angular/compiler|7.2.0|
|@angular/core|7.2.0|
|@angular/forms|7.2.0|
|@angular/http|7.2.0|
|@angular/material|7.2.1|
|@angular/platform-browser|7.2.0|
|@angular/platform-browser-dynamic|7.2.0|
|@angular/router|7.2.0|
|core-js|2.6.1|
|rxjs|6.3.3|
|rxjs-compat|6.3.3|
|zone.js|0.8.26|

#### Is there anything else we should know?
Resource-bound maybe?

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit der verlinkten StackBlitz-Reproduktion und bestätige, dass das Gedrückthalten der Abwärtspfeiltaste in Chrome oder IE letztendlich zum Stillstand führt, während Firefox nicht betroffen ist. Verfolge anhand dieser Reproduktion die Tastaturinteraktion und das Fokusverhalten der Liste mit virtuellem Scrolling. Als erledigt gilt die Aufgabe, wenn eine große Liste mit komplexen Daten mithilfe der Pfeiltaste kontinuierlich bis zum Ende gescrollt werden kann und die Regression durch einen geeigneten Test abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, typescript
Bereich
frontend, performance
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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