我想了解Observable和RxJS是如何工作的,所以这可能不是如何使用它们的关键。RxJS可观测量只能由一个用户处理吗?
我有一个Angular2应用程序,并且还使用RxJS Observables发送事件。现在针对特殊类型的错误事件,我想知道该事件是否已由其他订阅服务器处理。 Observable上可能存在多个订阅者,有些可能会对该事件承担全部责任,以便其他人不再需要。
这个想法来自路由事件如何在WPF中工作。在事件处理程序,你得到RoutedEventArgs参数,它有一个属性Handled:
如果设置,设置为true,如果该事件被标记处理;否则为false。如果读取此值,则true表示类处理程序或路径上的某个实例处理程序已标记此事件已处理。 false.indicates没有这样的处理程序已标记事件处理。
另一个实现例子是中间件在ASP.NET核心管线如何工作 - https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware - 您可以拨打下一个中间件或只返回一个结果。
我正在考虑将Handled
属性添加到事件中,我将它扔进可观察管道中,但我不确定这是否是RxJS中这种做法的惯用方式。
你绝对不希望突变观察到的对象。 –