в момент возврата он повторно перечисляет данные с добавленными данными и предыдущими данными

#angular

Вопрос:

Здравствуйте, я пытаюсь мгновенно обновиться при вводе карты без необходимости перезагрузки страницы, при возврате она возвращает данные, и перед обновлением появляется список карт и список карт с добавленными данными

getstd() {

 this.API.getListas(this.id, this.idx)
  .subscribe((data: customer[]) => {
    this.customersx = data;
 
    data.forEach((element, i) => {
      this.API.getCards(element.id)

        .subscribe((data2: any) => {

          data2.forEach((elementcard) => { 
            this.customersy.push(elementcard)
          });



        });
    });


  });
 

}

createCard(список: список участников, закрыть: () => пусто, идентификатор) {

 var customer = this.formcard.value;
customer.listId = id;

this.API.createCard(customer).subscribe((response) => {
  

  return this.getstd();
});
 

Комментарии:

1. Пожалуйста, предоставьте более подробную описательную информацию. Например, что делает этот.getstd ()? Включите примеры кода, если это возможно.

2. здравствуйте @BrianSmithsorry Я уже добавил недостающие данные не могли бы вы мне помочь, пожалуйста

Ответ №1:

Если вы получаете полный список обратно после вызова api, то в функции createCard вы можете очистить переменные customers, так как вы снова устанавливаете их в функции getstd ().

 createCard(list: ScrumboardList, close: () => void, id) {
  var customer = this.formcard.value;
  customer.listId = id;

  this.API.createCard(customer).subscribe((response) => {

    this.customersx = [];
    this.customersy = [];
  

    return this.getstd();
});
 

Комментарии:

1. БОЛЬШОЕ ТЕБЕ СПАСИБО, ЭТО РАБОТАЕТ БЕЗ ПРОБЛЕМ, БРАТ АЛЬТО КАПО

2. Отлично, рад помочь. Обязательно отметьте это как ответ и проголосуйте.