Я удаляю объект из базы данных с помощью кнопки delete, сделанной в angular 13, но это не удаляет его мгновенно во фронтенде.

мне нужно удалить объект в реальном времени из frontend и backend, объект удаляется из backend мгновенно, но он не отражается во frontend, пока страница не обновится

//удалить компонент

deleteStory(id : string){
  console.log(id)
  this.storyapiService.deleteStory(id).subscribe();
  

  }

service.ts

deleteStory(id: string): Observable<number>{

     return this.http.delete<number>(this.API_URL +id);

  }

//html

<button class="btn btn-primary" (click)="deleteStory(story.id)" style="margin-left:5px">Delete </button>

Попробуйте получить данные снова после удаления элемента, чтобы обновить текущее представление.

Надеюсь, что это сработает!

После отправки запроса на удаление в бэкенд, фронтенд не реагирует на результат запроса. Поэтому он ничего не делает.

Вам нужно либо удалить элемент из списка в deleteStory() после того, как обращение к бэкенду было успешным, либо снова получить все истории из бэкенда.

Вы отправляете на бэкенд сообщение об успехе или неудаче? Если да, используйте результаты вашей подписки,

deleteStory(id : string){
  this.storyapiService.deleteStory(id).subscribe(
          result => this.refreshPageOrUpdateUIFunction(result), // <-- function to reflect update
          error => this.showError(error), // <-- show your errors
        );}
Вернуться на верх