FirebaseExtended / FirebaseExtended/reactfire

useFirestoreCollection triggers a double render

Đang mở
#484 4 bình luận 2 reaction 0 người được giao Xem trên GitHub
v5
Ngôn ngữ chính
TypeScript
Star
3.6k
Fork
403
Merge trung bình
14 giờ 53 phút
Pull request đã merge (30 ngày)
5

Mô tả

Hi,

Seems like `useFirestoreCollection` always triggers unnecessary render when fetching data (suspense is **on**). Similar behavior is also the case for `useUser`.
There's a chance I'm simply using the API wrong, so please advise if so :)

### Version info

**React:** 17.0.2

**Firebase:** 9.1.3

**ReactFire:** 4.2.0

### Test case

```javascript
const q = /* whatever query */;
const queryResults = useFirestoreCollection(q);
console.log(queryResults);

```

### Expected behavior

`console.log` is called once.

### Actual behavior

`console.log` is called twice.

Ultimately, what I'm trying to achieve is a code similar to the one below

```javascript
const queryResults = useFirestoreCollection(query);
return queryResults.data.docs.map((d) => /* render */);
```

that renders only once when the data is fetched (and then only when there're changes in the collection).

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.