不确定这是怎么做的。
filter
是一个可观察的Firebase列表。
filter: FirebaseListObservable<UserModel[]>;
这是查询。它使所有用户具有特定职业。
this.filter = this.db.list('occupationsUsers/' + occupation + '/users');
然后我使用了<md-list>
。它显示所有有职业的用户。
<md-list>
<md-list-item *ngFor="let user of filter | async" [value]="user.email">{{user.email}}
<button md-button [mdMenuTriggerFor]="menu">Menu</button>
<md-menu #menu="mdMenu">
<button md-menu-item (click)="removeUserFromFilterList(user.email)">Delete</button>
</md-menu>
</md-list-item>
</md-list>
removeUserFromFilterList
removeUserFromFilterList(userEmail: string) {
var index = this.eventForm['guests'].indexOf(userEmail);
this.filter = this.eventForm['guests'].splice(index, 1);
}
错误:
ERROR Error: InvalidPipeArgument: '[object Object]' for pipe 'AsyncPipe'
at invalidPipeArgumentError
如何使用新的更新用户列表填充this.filter
并使其保持使用firebase查询?
答案 0 :(得分:0)
this.filter
是FirebaseListObservable
。据我所知,this.eventForm
只是一个数组(而不是像this.filter
)。
我建议你使用以下方法之一:
this.filter.update('key-of-some-data', { object to remove });
或
this.filter.remove('key-of-some-data');
你可以在上面阅读更多相关信息
click here