Отмена подписки на документ пожарного магазина - PullRequest
0 голосов
/ 14 января 2019

У меня есть такое требование, чтобы я мог получить данные документа в реальном времени.

дБ выглядит следующим образом- Сводка -> 2019-01-14 -> некоторые данные

где сводка - это собрание, 2019-01-14 - документ, в котором некоторые данные представлены в виде данных.

аналогично будет n таких документов, как 2019-01-15, 2019-01-16 и т. Д.

когда я подписываюсь на определенный документ, я, очевидно, получаю изменения в реальном времени для этого документа (скажем, сегодняшний документ 2019-01-14 ), но когда какие-либо изменения происходят в другом документе, пользовательский интерфейс отражает изменения для этого документа, кроме документа 2019-01-14.

dataService.ts

docRef: AngularFirestoreDocument<any>;
constructor(private _afs: AngularFirestore) { }

getData(doc) {
  this.docRef = this._afs.doc(`summary/${doc}`); 
  return this.docRef.valueChanges();
}

app.component.ts

dataForDate: any;
constructor(private _ds: DataService) { }

ngOnInit() {
  this.globalDate = new Date();

  /*logic to create that document(2019-01-14)
   let doc = "2019-01-14";
  */
  this._ds.getData(doc).subscribe(
    (data) => { this.dataForDate = data;}
  );
}


getDataForDate(date){ //where date is in format 2019-01-14
  this._ds.getData(doc).subscribe(
    (data) => { this.dataForDate = data;}
  );
}

и я надеюсь, что смогу использовать отписаться , чтобы как-то разрешить эту ситуацию или что-то еще. так как я могу отображать изменения только для конкретного документа, независимо от изменений, происходящих в других документах.

Пожалуйста, помогите. Заранее спасибо.

...