rxjs5相关内容

动态过滤 rxjs 流

我正在使用 RXJS 并且希望动态过滤数据,但我遇到了问题: let numberSource: ReplaySubject= new ReplaySubject();let numberFilter: BehaviorSubject=新的行为主体(5);让filteredData = numberSource.filter(n => n {过滤数据 = numberSource.filter ..
发布时间:2021-07-14 19:12:01 其他开发

如何使用 rxjs observables 为缓存的 Angular2 http 响应添加到期时间

我正在使用 rxjs publishReplay(1) 和 refCount 来缓存 http 响应.为缓存设置到期时间的最佳方法是什么.我正在使用每 1 小时到期的 http 调用获取令牌. @Injectable()导出类 SearchService{公共网址:字符串;私有令牌:Observable= 空;构造函数(私有_http:Http){}getSecurityToken(url:st ..
发布时间:2021-07-14 19:11:44 其他开发

什么是 switchMap 等价于未展平的形式?

如果 flatMap() 等价于 map().mergeAll(),那么 switchMap() 等价于什么? 解决方案 switchMap() 操作符等价于使用 map().switch().> 由于 switch() 运算符仅适用于高阶 Observable,因此前面的 map() 必须返回一个 Observable.没有 switchAll() 运算符,因为 switch() 运算 ..
发布时间:2021-07-14 19:11:41 其他开发

使用推荐的操作符导入调用 RxJS 共享时遇到问题

我正在尝试了解导入 rxjs 运算符的最佳实践 似乎我应该以这种方式导入 share,但是,以下内容不起作用,因为它说 share 需要 0 个参数.我不太确定如何正确调用 share. import { share } from 'rxjs/operators';...公共当前用户:可观察的= share(this.currentUser$.asObservable()); 以旧方式进 ..
发布时间:2021-07-14 19:11:20 其他开发

为什么按钮点击触发器与 setTimeout() 触发器不同?

考虑以下几乎相同的两个片段. 区别在于: 第一个使用 setTimeout() 来触发事件 第二个在按钮被点击时触发事件 如果您检查控制台,您会看到代码段 1 中的最后两行是: App 渲染 1 个文件夹观察js 在代码片段 2 中是: 观察到的js应用渲染 1 个文件夹 问题:为什么顺序颠倒了? setTimeout() 游乐场 按钮游乐场 代码段 ..
发布时间:2021-07-14 19:11:06 其他开发

如何在 RxJs 5 中将 Subject 转换为 Observable

我们如何在 RxJs 5 中将 Subject 转换为 Observable?此功能非常有用,例如,当我们想要公开订阅的主题但不想放弃对其调用 next() 的控制权,并且希望将新值的发布保密. 文档(参见此处) 提到这样的事情: var subject = new Rx.Subject();var obs = subject.asObservable(); 但在 RxJs 5 中,这目 ..
发布时间:2021-07-14 19:09:24 其他开发

当内部 observable 完成时,switchMap 似乎没有完成

当谈到 RxJS 时,我仍然是一个菜鸟,但这是我正在尝试做的事情的 JSBin. https://jsbin.com/wusalibiyu/1/edit?js,console 我有一个可观察的 'a'(在我的例子中是当前的活动连接),它在连接重新连接时发出一个新对象.它本身就是一个可观察对象,因为它可以重新发出一个新值. 我现在想要一个可在当前连接上执行操作时完成的 observ ..
发布时间:2021-07-14 19:09:16 其他开发

BehaviorSubject 初始值不适用于 share()

share() 运算符应用于 BehaviorSubject.BehaviorSubject 有初始值. 目标是创建单个共享订阅.但是当 BehaviorSubject 具有初始值时,这种共享订阅似乎不起作用. 得到意想不到的结果. 代码如下: let subject = new Rx.BehaviorSubject(0);让出版 = 主题.do(v => console.lo ..
发布时间:2021-07-14 19:09:10 其他开发

链式 redux-observable 史诗只正确触发一次

我已经设置了一个等待另一个史诗完成的史诗,就像@jayphelps 在这里的回答:从其他史诗中调用史诗 但是我发现它似乎只运行一次.之后,我可以在控制台中看到 CART_CONFIG_READY 操作,但未触发 DO_THE_NEXT_THING 操作. 我尝试了 mergeMap 和 switchMap 的各种组合,有和没有 take 但似乎没有任何帮助. 这是(某种)我的代码 ..
发布时间:2021-07-14 19:08:13 其他开发

关于角度的 ForkJoin 问题

我为测试 forkJoin 编写了此代码,但它不起作用!你能检查一下是什么问题吗? const observables = [];observables.push(new Observable(subscriber =>subscriber.next('Hello')));observables.push(new Observable(subscriber =>subscriber.next(' ..
发布时间:2021-07-14 19:08:10 其他开发

rxjs5 合并和错误处理

我想组合/合并多个Observable,当它们中的每一个完成时,执行一个finally 函数.merge 操作符似乎并行执行每个订阅,这正是我所需要的,但如果其中任何一个抛出错误,执行就会停止. RxJS 版本 4 有一个运算符 mergeDelayError 应该让所有订阅一直执行直到所有订阅都完成,但是这个操作符在版本 5 中没有实现. 我应该改用不同的运营商吗? var sou ..
发布时间:2021-07-14 19:07:09 其他开发

在 rxjs 中实现 fromSubscriber

我今天遇到了一个有趣的问题.我正在开发一个可以上传文件的应用程序,我们想要实现一个进度条.该应用程序是使用 React/Redux/Redux-Observable 编写的.我想为上传进度调度操作.这是我为实现它所做的: withProgress(method, url, body = {}, headers = {}) {const progressSubscriber = Subscribe ..
发布时间:2021-07-14 19:06:14 前端开发

如何使用 RxJS 显示“用户正在输入"指标?

我对 BaconJS 略知一二,但现在我正在尝试通过创建“用户正在输入..."指示器来学习 RxJS.很简单,可以用两个简单的规则来解释: 当用户输入时,指示器应该立即可见. 当用户停止输入时,指示器应该仍然可见,直到用户最后一次输入操作后 1 秒. 我不确定这是否正确,但到目前为止我已经创建了两个流: 每秒发出一个 0 的心跳流. 一个流来捕获用户输入事件并为每个事件发出一 ..
发布时间:2021-07-14 19:05:59 前端开发

CombineLatest 第一个事件未触发

我想知道我的应用程序何时脱机并重新联机.我在 rxjs 中注册了以下事件: const online = Rx.Observable.fromEvent(window, 'online');const 离线 = Rx.Observable.fromEvent(window, 'offline');const source = Rx.Observable.combineLatest(online, ..
发布时间:2021-07-14 19:05:56 前端开发

如何使用 Rx.Observable.prototype.let 操作符?

let 操作符的示例和解释(https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/operators/let.md) 不清楚.任何人都有一个很好的例子/解释 let 操作符是如何工作的,我们应该在什么时候使用它? 解决方案 &tldr; 这是一个方便的功能,能够划分逻辑并将其注入管道. 更长的解 ..
发布时间:2021-07-14 19:05:16 其他开发