天天看點

使用Angular HTTP client對資料模型進行删除操作

需求:Hero清單裡每一個元素都有一個删除按鈕,點選即可删除。

使用Angular HTTP client對資料模型進行删除操作
(1) hero清單的UI上,每個li元素内增添一個删除按鈕。
使用Angular HTTP client對資料模型進行删除操作

delete函數的實作:

不僅删除Component本身heroes屬性的對應元素,同時調用hero service删除遠端伺服器上的hero資源:

使用Angular HTTP client對資料模型進行删除操作

注意第43行的subscribe方法是必須的,即便沒有指定任何回調函數,否則http請求不會發送出去。

(2) 調用http client實作伺服器端的資源删除:

deleteHero(hero: Hero | number): Observable<Hero> {
  const id = typeof hero === 'number' ? hero : hero.id;
  const url = `${this.heroesUrl}/${id}`;

  return this.http.delete<Hero>(url, this.httpOptions).pipe(
    tap(_ => this.log(`deleted hero id=${id}`)),
    catchError(this.handleError<Hero>('deleteHero'))
  );
}      
使用Angular HTTP client對資料模型進行删除操作

繼續閱讀