Lazy-load the Firestore with standalone components
- Ngôn ngữ chính
- TypeScript
- Star
- 7.8k
- Fork
- 2.2k
- Merge trung bình
- 22 giờ 28 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
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
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu bằng cách đọc component độc lập `get-firestore.ts` và các entry point `provideFirestore`/`getFirestore` được nêu trong báo cáo. Tái hiện lỗi runtime với các phiên bản Angular, Firebase và AngularFire được liệt kê, sau đó lập tài liệu hoặc triển khai đường dẫn lazy-loading được hỗ trợ và xác minh rằng Firestore không được khởi tạo trong cấu hình ứng dụng.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- angular, firebase, typescript
- Lĩnh vực
- database, frontend
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 30/100