我有以下代码:
this.isUsingGoogleTwoFactor$ = this.user$.pipe(map((user: User) =>
user.isUsingGoogleTwoFactor));
现在我想要的是向 isUsingGoogleTwoFactor$
发出新值。我知道我不能使用 observables
来做到这一点,但我应该使用 subjects
。但我不知道如何用管道来做。
谢谢!
最佳答案
检查 BehaviourSubject .这是一种允许您推送新值并跟踪它发出的最后一个值的 Observable。
如何使用它的示例在我链接的那个站点中。但简而言之,这就是您使用它的方式:
const observable = new BehaviorSubject("initial value");
如果此时订阅者来了,并执行:
observable.subscribe({
next: (value) => console.log("The value is: ", value)
});
那么输出将是:
The value is: initial value
之后,每次调用 next
时,所有订阅者都会收到通知:
observable.next("a new value");
将在订阅者中打印:
The value is: a new value
关于javascript - 向 Observable 发射新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55410581/