Angular Firestore иногда дублирует записи - PullRequest
0 голосов
/ 07 апреля 2020

Что-то, что я заметил при кодировании в Angular Typescript - при использовании Firestore, я иногда получаю двойные записи.

Примером этого может быть

HTML

<button id="excel" disabled="disabled" class="excel" (click)="exportToExcel($event)">{{button}}</button>
<div *ngFor="let item of classes | async" 
[ngClass]="{check:addItem
(item.data.Device,
item.data.Humidity,
item.data.Index,
item.data.Raw,
item.data.Resistance,
item.data.Temperature,
item.data.VDD,
item.data.VOC,
item.data.Time,
item.id)}">
</div>

.TS (Нормальный код)

 json = [];

  addItem
 (
_Device:string,
_Humidity:string,
_Index:string,
_Raw:string,
_Resistance:string,
_Temperature:string,
_VDD:string,
_VOC:string,
_Time:string,
_ID:string,
)
{

let jsonObject = {
  Device: _Device,
  Humidity: _Humidity,
  Index: _Index,
  Raw: _Raw,
  Resistance: _Resistance,
  Temperature:_Temperature,
  VDD:_VDD,
  VOC:_VOC,
  Time:_Time,
  ID:_ID,
};

this.json.push(jsonObject);

}

.TS (Для l oop для предотвращения двойных записей)

json = [];

  addItem
(
_Device:string,
_Humidity:string,
_Index:string,
_Raw:string,
_Resistance:string,
_Temperature:string,
_VDD:string,
_VOC:string,
_Time:string,
_ID:string,
)
{

let jsonObject = {
  Device: _Device,
  Humidity: _Humidity,
  Index: _Index,
  Raw: _Raw,
  Resistance: _Resistance,
  Temperature:_Temperature,
  VDD:_VDD,
  VOC:_VOC,
  Time:_Time,
  ID:_ID,
};
let Bools = false;
for (let i = 0; i < this.json.length; i++)
{
  if (this.json[i].ID == _ID)
  {
    Bools = true;
    break;
  }
}

if (Bools == false)
{
this.json.push(jsonObject);
}
}

Так что мой вопрос в Angular Firestore, почему это возвращает дубликаты каждой записи? Я исправил проблему с простым для l oop, но заметил, что иногда я получаю повторяющиеся записи или даже тройные записи в моем объекте json. Все, что вы видите в моем HTML, - это, например, все мое HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...