仅当订阅后有新值时才获取该值
Get the value only if a new value comes after subscribing
我正在使用ngrx/store。
this.store
.select(s => s.products && s.products.name)
.filter(name => !!name)
.subscribe(name => {
// Now if there is a `name` in the store, it will run immediately
// However, I want to get the `name`, only if a new value comes after subscribing
console.log(name);
});
我试图在 .subscribe
之前添加 .publish()
,但是我无法获得任何值。
只有在订阅后出现新值时,我如何才能获得 name
?谢谢
为此您需要了解以下内容:
- 热 vs. 冷 observables
- 背压(在您的情况下容差为 0)
当您订阅时,将返回商店的当前状态。如果您不想要当前状态,则可以跳过第一个响应。
this.store.select(...).跳过(1)
我正在使用ngrx/store。
this.store
.select(s => s.products && s.products.name)
.filter(name => !!name)
.subscribe(name => {
// Now if there is a `name` in the store, it will run immediately
// However, I want to get the `name`, only if a new value comes after subscribing
console.log(name);
});
我试图在 .subscribe
之前添加 .publish()
,但是我无法获得任何值。
只有在订阅后出现新值时,我如何才能获得 name
?谢谢
为此您需要了解以下内容:
- 热 vs. 冷 observables
- 背压(在您的情况下容差为 0)
当您订阅时,将返回商店的当前状态。如果您不想要当前状态,则可以跳过第一个响应。 this.store.select(...).跳过(1)