2
我有一個*ngFor
指令的陣列時使用在陣列中顯示每個元件的組件的重複值: -ngFor改變對象
<app-user-row *ngFor="let user of users"
[user]="user"
(update)="updateUsers()"></app-user-row>
如果這些部件中的一個觸發一個update
事件,則主機組件將調用一個服務,該服務命中一個服務器並以數組形式獲取數據的最新副本。這也得到呼籲ngOnInit
得到inital數據
private updateUsers() {
this.userManagementService.getUsers().subscribe((res) => {
this.users = res;
},
(error) => {
console.log(error);
});
}
然而,這似乎是新的數據,預先準備的舊的頂部。例如,如果我有2行,一個是安迪,一個是鮑勃,我刪除鮑勃行,現在我會看到安迪,安迪,鮑勃。此時,我的用戶數組也將只包含Andy的單個條目。我對Angular2很新,我錯過了什麼?
編輯:這是服務的方法,做了刪除:
public deleteUser(user:User){
let headers = new Headers({
'Accept': 'application/json'
});
let options = new RequestOptions({headers});
return this.http.delete(`${this.apiBaseUrl}Account/user/${user.id}`, options);
}
並調用它(在UserRowComponent
)功能:我跟蹤的
onDelete() {
this.userManagementService.deleteUser(this.user).subscribe((res) => {
this.update.emit(this.user);
},
(error) => {
});
}
*「我刪除了Bob行...」 - - 你怎麼做到的? – dfsq
服務命中REST Web服務以刪除用戶,並且組件在請求完成時觸發'update'事件,該事件獲取用戶數據的新副本。 –
請向我們展示刪除用戶的刪除方法或更新事件。 – rinukkusu