【发布时间】:2017-08-19 23:45:45
【问题描述】:
我有一个主题的服务:
@Injectable() export class UserService() {
private currentUserSubject = new BehaviorSubject<User>(null);
public currentUser = this.currentUserSubject.asObservable().distinctUntilChanged();
... // emitting new User
}
有一个组件我将这个服务注入并订阅更新:
@Component() export class UserComponent {
constructor(private userService: UserService) {
this.userService.currentUser
.subscribe((user) => {
// I want to see not null value here
})
}
}
我想对Observable<User> 应用一些东西来过滤所有空值并仅在实际加载User 时进入订阅。
【问题讨论】:
-
为什么不在回调中测试它是否为空?或者,有一个
Observable.filter。 -
就编写好的代码而言,我认为这不是正确的决定。我想“告诉”我只订阅非空值而不是所有值并在#subscribe 中过滤。
标签: javascript angular typescript rxjs observable