javascript - 向 Observable 发射新值

标签 javascript angular rxjs

我有以下代码:

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/

相关文章:

javascript - 默认 WebGL 颜色缓冲区示例

javascript - 将值附加到 Javascript 表单上的 URL

Angular:防止模板中出现额外的空格

Angular 2点击事件回调而不触发变化检测

javascript - 如何在模板中运行可观察函数?

javascript - 使用 Observable.ajax.post 是否可以捕获 'correct/custom' 错误?

javascript - 在 JavaScript 中嵌套 razor C#

javascript - ReactJS - 组件 - 最佳实践

angularjs - RxJS Observables,什么时候退订?

javascript - 在字段中输入 3 个字符后如何执行 API 调用?