bug(CDK/SCROLLING): <object> element in *cdkVirtualFor is glitching when using "templateCacheSize: 0"
- Langage dominant
- TypeScript
- Étoiles
- 25k
- Forks
- 6.8k
- Merge moyen
- 1 j 8 h
- PR mergées (30 j)
- 91
Description
### 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 using No cache strategy (templateCacheSize: 0) for *cdkVirtualFor with element (as image), elements of list glitch while scrolling. Seems like cdkVirtualFor incorrectly init/reinit or reuse instances of listed elements.
When using tag instead of no bug detected.
### Reproduction
StackBlitz link: https://stackblitz.com/edit/uyv2wg?file=src%2Fexample%2Fcdk-virtual-scroll-template-cache-example.html
Steps to reproduce:
1. Create list of 100 elements, use with image link data.
2. Scroll
### Expected Behavior
Smooth scrolling, correct reusing/reinit of list elements, no content replacing.
### Actual Behavior
Scrolling is not smooth (end sometimes end / start of list is unreachable), elements in list are replaced by content of sibling.
### Environment
- Angular: 17.0.0-rc.0 (and 15)
- CDK/Material: 16.2.10
- Browser(s): Chrome
- Operating System (e.g. Windows, macOS, Ubuntu): macOs
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par la reproduction StackBlitz liée et vérifiez le comportement dans Chrome avec cdkVirtualFor, templateCacheSize: 0 et object image elements. Lisez l’implémentation du défilement virtuel de CDK autour de la réutilisation des templates et comparez-la au cas de img. C’est terminé lorsque le défilement est fluide, que tous les éléments de la liste sont accessibles et qu’aucun contenu n’est remplacé par un élément frère.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- angular, typescript
- Domaine
- frontend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100