angular / angular/angularfire

Multiple valueChange subscriptions for same collection leads to one subscription firing changes for another

Aperta
#2,740 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
7.8k
Fork
2.2k
Merge medio
22h 28m
PR unite (30g)
6

Descrizione

### Version info

**Angular:** 10.0.9

**Firebase:** ^7.13.1

**AngularFire:** ^6.02

**Other (e.g. Ionic/Cordova, Node, browser, operating system):**

### How to reproduce these conditions

Create multiple valueChange subscriptions to the same collection (with a different query)
```
this.db.collection('/people/' + this.selectedPeopleId + '/messages', ref => ref.orderBy("createdDate").limitToLast(100)).valueChanges({idField: 'documentId'}).subscribe(messageUpdates =>
```
AND

```
this.db.collection('/people/' + this.selectedPeopleId + '/messages', ref => ref.where("type", ">", 0).limitToLast(100)).valueChanges({idField: 'documentId'}).subscribe(messageUpdates =>
```

In my case, I am unsubscribing from the second listener and recreating it with a different limitToLast value (though I'm unsure if that's necessary to reproduce)

### Debug output
none

### Expected behavior

Each valueChange listener should only fire results for itself

### Actual behavior

the first listener is returning valueChanges that match the query for the second listener.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start at the AngularFire collection().valueChanges() entry point and reproduce the two subscriptions against the same /people/.../messages collection with different queries. Verify that unsubscribing and recreating the second listener does not alter results delivered to the first; done means each subscription emits only its own query results.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
angular, firebase, typescript
Ambito
database
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.