[英]Angular 6+ - Should/must an object made of behavior subjects, be a behavior subject itself?
[英]Angular 6 subjects vs behavior subject
我已经开发了一个应用程序,该应用程序使用行为主题为所有组件进行数据传输,使用可观察概念真的是一个好习惯。
import { BehaviorSubject } from 'rxjs';
const subject = new BehaviorSubject(123);
// two new subscribers will get initial value => output: 123, 123
subject.subscribe(console.log);
subject.subscribe(console.log);
// two subscribers will get new value => output: 456, 456
subject.next(456);
// new subscriber will get latest value (456) => output: 456
subject.subscribe(console.log);
Subject :一个 Subject observable 用于立即通知订阅者它发出的更新值。 它不会跟踪旧值,即如果一个 Subject observable 首先发出一个值然后被订阅,那么订阅者将不会得到那个值。 您可以将主题视为实时更新/提要。 从创建到订阅期间发出的旧值不会保留; 只能捕获订阅后发出的值。
BehaviorSubject : BehaviorSubject 的行为类似于普通的 Observable,但它有一个额外的功能,即它保留最后发出的值。 这意味着如果一个值是从 BehaviorSubject 之前发出的,并且如果在发出该值之后添加了订阅,那么订阅将给出最后发出的值。 也可以使用 BehaviorSubject 上的 .value 检索 BehaviorSubject 最后一个值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.