Angular 角度4-从表中删除当前行

Angular 角度4-从表中删除当前行,angular,rxjs,state-management,Angular,Rxjs,State Management,我想通过单击删除链接从表中删除当前行 我使用下面的代码来显示数据 服务 getMembers(): Observable<any> { return this._http.get('http://localhost/membership/main/getUsers') .map(response => response.json() ); } members$: Observable<any[]>; ngOnInit() { this.members

我想通过单击删除链接从表中删除当前行

我使用下面的代码来显示数据

服务

getMembers(): Observable<any> {
  return this._http.get('http://localhost/membership/main/getUsers')
  .map(response => response.json() );
}
members$: Observable<any[]>;

ngOnInit() {
  this.members$ = this._membersService.getMembers()
}

delete(id) {
 this._membersService.deleteUser(id);
}
getMembers():可观察{
返回此。\u http.get('http://localhost/membership/main/getUsers')
.map(response=>response.json());
}
组件

getMembers(): Observable<any> {
  return this._http.get('http://localhost/membership/main/getUsers')
  .map(response => response.json() );
}
members$: Observable<any[]>;

ngOnInit() {
  this.members$ = this._membersService.getMembers()
}

delete(id) {
 this._membersService.deleteUser(id);
}
members$:可见;
恩戈尼尼特(){
this.members$=this.\u membersService.getMembers()
}
删除(id){
此.\u membersService.deleteUser(id);
}
html

<a (click)="delete(member?.id, i)">


我听说了拼接功能。但是我找不到一种方法如何在可观察中使用它。

我想,你在这里有更大的问题

实际上,没有简单的方法可以从一个
可观察的
数组中删除一行
T
。我建议您选择常规路线:

members: any[];

ngOnInit(): void {
  this._membersService
    .getMembers()
    .subscribe(members => this.members = members);
}

delete(memberIndex: number): void {
  this.members.splice(memberIndex, 1);
}

<a (click)="delete(i)">
成员:任何[];
ngOnInit():void{
这是我们的会员服务
.getMembers()
.subscribe(members=>this.members=members);
}
删除(成员索引:编号):无效{
此.members.splice(memberIndex,1);
}
用于数据管理。但由于你的问题中没有提到这一点,我想,这是不可能的


否则,您也可以使用
BehaviorSubject
,但我不建议您在当前设置中这样做。最好将
BehaviorSubject
放在您的服务中,并将其公开为
可观察的

您需要订阅并且您获得了所有成员,您只需要一个成员就可以删除一个用户,所以希望您的deleteUser(id)方法能够正确地删除该用户。啊哈。。你的意思是我需要避免使用可观察的?我什么时候应该使用可观察的?嗯,你不应该回避可观察的。它们实际上是一件好事。问题是,它们是只读的,并且与您想要修改可观察对象的场景冲突。这太难了。所以,你基本上有三个选择:a)最简单的一个是在这个特殊情况下不使用它们;只需订阅并将结果存储在字段中;2) 更难,但在复杂的应用程序中更好——使用ngrx/store;3) 最后一个是使用
Subject
,其行为类似于可观察,但也允许获取其当前值(此选项实际上是脏的)。抱歉。对于选项三,我应该说
BehaviorSubject
,这很好,谢谢你,是的。在这种情况下,我不会使用observable