![]() |
1
3
我相信在SelectedProductComponent订阅之前,ProductGalleryService.selectedProductSubject$subject已经发出。 如何解决这个问题? RxJS提供了另一种类型的主题——回放主题。 订阅ReplaySubject时,它将重新发出任何先前推送的值。 ReplaySubject有一个缓冲区大小,可以存储和重新发射多少项目。对于你的用例,我相信你只关心最后一个,所以BufferSize是1。
|
![]() |
2
0
您可以尝试使用Angular AsyncPipe自动处理订阅/取消订阅。这对于将Observables绑定到模板非常有用。 而不是:
你会:
这还有一个额外的好处,即自动取消订阅。当您的组件被销毁时,您总是希望关闭订阅。在你的例子中,这还没有完成。这不是你的主要问题,而是另一个需要研究的问题。 |
![]() |
koque · 为什么我的RxJs主题没有按预期工作? 6 月前 |
![]() |
Raphaël VO · 不使用Observable的初始值 6 月前 |
![]() |
Lenni · 返回信号并在Angular中订阅它 10 月前 |
![]() |
dman · 在Angular单元测试中似乎无法模拟行为主体 10 月前 |
![]() |
Nevyan Dimitrov Neykov · 效果内部的角度信号() 11 月前 |
![]() |
Ryley38 · 如何跳过流的第一个值,除非它是RxJS的复制粘贴? 11 月前 |