rxjs相关内容
在我拥有这个运行良好的解析器之前: resolve() {返回 forkJoin(this.getData1(),this.getData2(),this.getData3());} 现在我必须做一些实际上不起作用的事情: resolve() {返回 this.actions$.管道(ofActionSuccessful(SomeSctonSuccess),叉连接(this.getData
..
我有一个基于令牌的身份验证机制的 API.成功登录后,我将两个令牌存储在浏览器的本地存储中 - 访问和刷新令牌.访问令牌包含在服务器端授权用户所需的所有必要信息,并且具有到期日期.当访问令牌过期时,客户端可以使用刷新令牌请求一个新的访问令牌,并在响应中获得一对新令牌. 在 angular 1.x 中,实现非常简单明了.例如我们可以使用拦截器: httpInterceptor.$inject
..
考虑使用 zip 运算符将两个无限的 Observable 压缩在一起,其中之一它发出项目的频率是另一个的两倍. 当前的实现是无损的,即如果我让这些 Observable 发射一个小时,然后我在它们的发射率之间切换,第一个 Observable 最终会赶上另一个. 随着缓冲区越来越大,这将在某些时候导致内存爆炸. 如果第一个 observable 将发射项目数小时,而第二个将在最后发射一个项
..
我目前有一项服务,可以向 API 发出 HTTP 请求以获取数据.我想对服务中的 observable 执行一些逻辑,但我仍然希望在我的组件中订阅 Observable,以便我可以将任何错误返回给组件和用户. 目前我这样做: //service.tsgetData(): Observable{返回 this.http.get(url).pipe(catchError(this.handle
..
我带来了“rxjs in action"这本书,刚刚完成了测试部分. 测试 rxjs 代码与通常的测试不同,因为一切都是延迟加载. 在书中,他们提到了两种测试方法,要么通过 done(我使用 QUnit 和 done 信号异步代码完成)或大理石图. 我的问题是,我应该选择上面提到的哪种方法? 解决方案 我经常从同事那里得到这个问题.我终于开始记录我的方法在我的博客上测试
..
我正在使用 Angular 和 TypeScript.我已经使用 try catch 构造在 API 调用的情况下进行错误处理.如果 try 块中发生任何错误,它就不会捕获块.应用程序仅在那里终止. 我也尝试过使用 throw.这是一个示例代码片段, 尝试{this.api.getAPI(Id).subscribe(//this.api 是我的 api 服务,那里有 getAPI(数据:任
..
构造函数(私人路线:ActivatedRoute,私有 http: Http){//观察参数变化让 paramObs = route.paramMap;//获取数据一次让 dataObs = http.get('...');//订阅两个可观察对象,//在同一级别使用两个解析值} 是否有类似于 forkJoin 的东西在发出参数更改时触发?forkJoin 仅在所有 observable 完成后才
..
大家好,我正在尝试掌握 RxJS 库和响应式编程的整个概念.我正在尝试将两个 observables 合并为一个.第一个 observable 包含一个对象数组 DefectImages[],第二个 observable 包含一个字符串数组,然后我将其转换为一个 DefectImages[] 数组.之后我想将这两个 observable 合二为一. 在我的代码下面: const obser
..
在我的 Angular 2 应用程序中,我有许多可观察对象和订阅.当然,我应该在离开页面时取消订阅,但我想知道是否有可能获得活动订阅的数量.仅用于调试信息或当我忘记退订时. rxjs 里有这些信息吗? 解决方案 可能有点晚了,但你可以利用 rxjs-spy. 此解决方案与提议的解决方案等效,而且在我看来,更易于维护. 我通常在 main.ts 中全局启用它,作为一种即发即
..
嗨,我正在尝试获取我在 Stack 上搜索的倒数计时器示例:角度 2 中的时间倒计时 这是我的代码: import { Component, ElementRef, OnInit, OnDestroy } from '@angular/core';import { Observable, Subscription, interval } from 'rxjs';@零件({选择器:'app-
..
免责声明:这是上一个2个依赖流的安全更新问题的延续 处理 RxJS(或任何其他 RX 实现)中允许流不终止的错误的惯用方法是什么? 相关代码是 function convert(unit, value) {无功请求 = {};请求[单位] = 值;var 转换 = $.ajax({方法:'POST',网址:'./convert.php',数据:请求,数据类型:'json'}).承诺(
..
我正在将 rxjs_compat 添加到我的项目中,以便迁移到 v6 的库. 然而,用于全局错误处理的现有 HttpInterceptor 不再编译.不知道该去哪里.各种都试过了.尝试过的所有方法都出现类型不匹配. import { Injectable } from "@angular/core";进口 {HttpEvent,Http拦截器,HttpHandler,请求,HttpResp
..
从 Angular 2 中的 http get 获取 json 数据的正确方法是什么.我正在使用模拟端点测试一些本地数据,我可以在 http.get() 但我无法在本地分配它或者存在一些时间问题.这是我的简单服务: 从'@angular/core'导入{Injectable};从 '@angular/http' 导入 {Http};导入 'rxjs/add/operator/map';//我们现
..
我正在努力使用 Observables 创建倒数计时器,示例在 http://reactivex.io/documentation/operators/timer.html 似乎不起作用.在这个特定示例中,与 timerInterval 相关的错误不是从计时器返回的 Observable 的函数. 我也一直在尝试其他方法,我想出的最好的方法是: Observable.interval(10
..
我需要 3 个并行的 Firebase.我需要将它们作为 1 个单一对象加入.代码如下: import {Http} from "@angular/http";从“angularfire2"导入{AngularFireDatabase};从“../model/thread"导入{Thread};从“../model/message"导入{Message};从“../model/participa
..
我正在尝试将基于 Promise 的代码转换为 RxJs,但很难理解 Rx,尤其是 RxJs. 我有一个带路径的数组. var paths = ["imagePath1","imagePath2"]; 我喜欢用 Javascript 加载图片 var img = new Image();img.src = 图像路径;image.onload//
..
假设我有以下标记: -0+RESET 以及以下 Rx.js 脚本: var total = 0Rx.Observable.merge(//递减Rx.Observable.fromEvent($('#dec'), 'click').map(
..
我是 RxJS 的新手,我正在尝试编写一个可以完成以下任务的应用程序: 在加载时,发出 AJAX 请求(为了简单起见,伪装成 fetchItems())以获取项目列表. 此后每一秒,发出 AJAX 请求以获取项目. 检查新项目时,仅应返回最近时间戳之后更改的项目. 在 observable 之外不应该有任何状态. 我的第一次尝试非常直接,实现了目标 1、2 和 4. var d
..
有没有比 observable 更强大的 Promise 的情况?我知道 observables 比 promises 有很多好处.但是有没有什么情况,我应该只使用 observables 上的承诺. 我找到了这个链接,promises vs observables.但这总是向我展示了 observables 比 promises 的好处.我想知道 promise 相对于 observabl
..
我想将我的 rxjs 代码更新为 6 我不明白. 在我每 5 秒轮询一次新数据之前: import { Observable, interval } from 'rxjs';import { switchMap, map } from 'rxjs/operators';var result = interval(5000).switchMap(() => this._authHttp.ge
..