Lazy-load the Firestore with standalone components
- Lingua principale
- TypeScript
- Stelle
- 7.8k
- Fork
- 2.2k
- Merge medio
- 22h 28m
- PR unite (30g)
- 6
Descrizione
Hi, is there a way to lazy-load the Firestore?
I'm using it only in a lazy-loaded component, so I would like to avoid providing it in the app config with
`provideFirestore(() => getFirestore())`
I followed this example: https://github.com/angular/angularfire/blob/main/samples/advanced/src/app/firestore/firestore.component.ts
I have a `get-firestore.ts` with this content:
```
import { getFirestore } from '@angular/fire/firestore';
export const firestore = getFirestore();
```
and I try to lazy-load it like this:
```
constructor() {
this.initFirestore();
}
private async initFirestore() {
const { firestore } = await import('./get-firestore');
this.firestore = firestore;
}
```
But I get this error at run-time:
```
Error: Either AngularFireModule has not been provided in your AppModule (this can be done manually or implictly using
provideFirebaseApp) or you're calling an AngularFire method outside of an NgModule (which is not supported).
```
Even if I add the `AngularFireModule` to the component's imports, it doesn't change.
So, what's the right way to lazy-load the FIrestore, with standalone components?
### Version info
**Angular:** 19.0.0
**Firebase:** 10.12.0
**AngularFire:** 18.0.1
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia leggendo il componente autonomo `get-firestore.ts` e gli entry point `provideFirestore`/`getFirestore` mostrati nel report. Riproduci l’errore a runtime con le versioni indicate di Angular, Firebase e AngularFire, quindi documenta o implementa il percorso di lazy loading supportato e verifica che Firestore non venga inizializzato nella configurazione dell’app.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- angular, firebase, typescript
- Ambito
- database, frontend
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100