Feature Request: Pull based virtualized list

Offen
#35 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
angular, typescript
Bereich
frontend

Rechercherichtung

Keine Repository-Datei und kein Test sind benannt; beginne damit, den Angular CDK DataSource-Ansatz mit den in der Anfrage beschriebenen AsyncIterator- und IxJS-Mustern zu vergleichen. Erledigt wäre eine vereinbarte API für pull-basiertes virtuelles Scrolling, einschließlich des asynchronen next()-Verhaltens und etwaiger Batch-Semantik.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Is your feature request related to a problem? Please describe.
I am looking to create a infinitely scrolling list that pulls data from an API.
It would like to be able to start a request to pull data for what is currently displayed.

Describe the solution you'd like
Much like how RxJS is used for pushing data, I would like to use Iterables either with IxJS or a similar data structure so that when an item needs to be displayed .next() is called.
For my use cases the .next() call would need to be async, so AsyncIterator might be a good data structure to start with.
However it may be nice to provide some pattern that allows batching.

Describe alternatives you've considered
I believe the @angular/cdk has a somewhat similar pattern with their DataSource class used for their virtualized scroller and data table. I am not sure that it would need all the requirements to build out the interaction I am looking for, but it would be a good start to getting towards that.

Additional context

Vorherrschende Sprache
TypeScript
Sterne
55
Forks
13
Ø Merge
16 Min.
Gemergte PRs (30 T.)
1

Beitragsleitfaden

Beitragsleitfaden öffnen

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 NativeScript/angular

Alle Issues in NativeScript/angular

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

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