我不清楚SubjectBehaviorSubject的区别.只是BehaviorSubjectgetValue()的功能吗?

推荐答案

行为主体持有一个值.当它被订阅时,它会立即发出值.主体没有价值.

主题示例(使用RxJS 5 API):

const subject = new Rx.Subject();
subject.next(1);
subject.subscribe(x => console.log(x));

控制台输出将为空

行为主体示例:

const subject = new Rx.BehaviorSubject(0);
subject.next(1);
subject.subscribe(x => console.log(x));

控制台输出:1

此外:

  • BehaviorSubject应该创建一个初始值:new Rx.BehaviorSubject(1)
  • 如果希望主体持有多个值,请考虑ReplaySubject

Typescript相关问答推荐

替换类型脚本类型中的多个特定字符串

TypeScript实用程序类型—至少需要一个属性的接口,某些指定属性除外

在将对象从一个对象转换成另一个对象时,可以缩小对象的键吗?

如果请求是流,如何等待所有响应块(Axios)

根据上一个参数值查找参数类型,也返回类型

ANGLE找不到辅助‘路由出口’的路由路径

无法从Chrome清除还原的初始状态数据

我可以使用TypeScrip从字符串词典/记录中填充强类型的环境对象吗?

Typescript,如何在通过属性存在过滤后重新分配类型?

是否将Angular *ngFor和*ngIf迁移到新的v17语法?

错误TS7030:并非所有代码路径都返回值.";由tsfig.json中的";Strong";:False引起

如何通过转换器类继承使用多态将对象从一种类型转换为另一种类型

为什么受歧视的unions 在一种情况下运作良好,但在另一种非常类似的情况下却不起作用?

使用泛型以自引用方式静态键入记录的键

Svelte+EsBuild+Deno-未捕获类型错误:无法读取未定义的属性(读取';$$';)

如何根据Typescript 中带有泛型的对象嵌套键数组获取数组或对象的正确类型?

使用本机 Promise 覆盖 WinJS Promise 作为 Chrome 扩展内容脚本?

TS2532:对象可能未定义

带有 Select 器和映射器的Typescript 泛型

根据索引将元组拆分为两个块