问题描述
如何刷新UserListComponent中已由UserEditComponent编辑过的用户,而不是重新加载所有用户?下面是相关代码:
在user.service.ts中:
class UserService with update(user: User): void {...}
在user-edit.component.ts中:
class UserEditComponent with submit(): void {...}
在user-list.component.ts中:
class UserListComponent {
users: Observable<User[]>;
ngOnInit(): void {
this.users = this.userService.users;
this.userService.loadAll();
}
}
UserService具有:
private _users = new BehaviorSubject([]);
readonly users = this._users.asObservable();
loadAll(): void {...} // Loads all users and initializes _users.
UserListComponent的HTML:
<mat-list-item *ngFor="let user of users | async">
<h3 mat-line>
<a mat-button [routerLink]="['/user-edit',user.id]">{{user.person.firstName}} {{user.person.middleName}} {{user.person.lastName}}</a>
</h3>
</mat-list-item>
UserListComponent具有:
users: Observable;
ngOnIinit(): void {
users = this.userService.users;
this.userService.loadAll();
}
UserEditComponent具有:
user: Observable;
form: FormGroup;
submit(): void {
if(this.form.valid) {
this.userService.update(this.form.value);
this.gotoList();
}
}
gotoList(): void {
this.router.navigate(['/user-list']);
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)