【发布时间】:2016-04-17 22:40:16
【问题描述】:
我的项目中有以下数据类型:
- 项目
- 用户
一个项目有很多用户。所以我写了一个项目服务,它使用 observables 来更新视图。到目前为止,当创建新项目或删除项目时,一切正常。
现在我想显示分配给特定项目的用户列表。该列表应在添加新用户或删除用户时更新。这在 Angular2 和 RxJS 中如何实现?
class ProjectsService {
public projects$: Observable<Project[]>;
private projectsObserver: Observer<Project[]>;
private dataStore: {
projects: Project[]
};
addProject(p) {
// Some magic server calls
this.dataStore.projects.push(p);
this.projectsObserver.next(this.dataStore.projects);
}
addUserToProject(p, u) {
// Pseudo-Code and server calls
// -> I want to use observables here
p.users.push(u);
}
}
class Projects {
public users: Array<User>;
}
class User {
public string userId;
public string userName;
}
所以基本上我想嵌套两个 observables。这是正确的方法吗?还是有其他最佳做法?
我希望你能理解我的问题。
提前谢谢你
【问题讨论】: