collectionData doesn't allow angular app to become stable with angular 17 and ssr (getDocs does)
- Langage dominant
- TypeScript
- Étoiles
- 7.8k
- Forks
- 2.2k
- Merge moyen
- 22 h 28 min
- PR mergées (30 j)
- 6
Description
### Version info
**Angular:**
17.0.9
**Firebase:**
10.7.1
**AngularFire:**
17.0.1
**Other (e.g. Ionic/Cordova, Node, browser, operating system):**
Windows
### How to reproduce these conditions
GitHub repo to clone as needs SSR to reproduce
https://github.com/pdela/testing-ng17-ssr
**Steps to set up and reproduce**
Clone the repo
install dependencies
npm run start
### Expected behavior
Angular app to become stable in reasonable time (millis)
### Actual behavior
The problem is that firebase prevents angular app to become stable in client, thus hydration process doesn't start, except after waiting for around 120 seconds
Edit:
Unfortunately I still have this problem in the demo above and in another project ( using angular 17.3.x and firebase 10.11.x) and this time using getDoc method.
I'm pretty sure the problem is originated in firestore SDK, as the 2 pending macrotasks that blocks angular being stable point to a setTimout inside firestore source code.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Clonez le dépôt de reproduction lié, installez ses dépendances et exécutez npm run start. Comparez les cas collectionData et getDoc/getDocs tout en observant les macrotâches Firestore en attente qui retardent la stabilité et l’hydratation d’Angular. Le travail est terminé lorsque l’application SSR devient rapidement stable et que l’hydratation démarre sans l’attente d’environ 120 secondes.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- angular, firebase, typescript
- Domaine
- cloud, frontend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100