rxjs相关内容
我有一个基本的JWT系统和一个拦截器,它可以检查请求是否由于未经授权而失败。 import {Injectable} from '@angular/core'; import {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from '@angular/common/http'; import
..
我编写了一个拦截器来为我刷新令牌。但使用我检查的调试器,它根本不会进入SwitchMap,请求也不会再次发送它。 有人知道问题是从哪里来的吗? import {HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse} from '@angular/common/http
..
我已经看到有一个.valueChanges()和.SnaphotChanges(),它们都监听数据库中的更改,但如果我只想检索一次数据,该怎么办? 我注意到,在.valueChanges()或.SnaphotChanges()的末尾添加.tube(taken(1))可以奏效,但它与Firebase FireStore在Android和iOS版的管理SDK和移动SDK中提供的.get()函数相同吗?
..
我想在我的ANGLE V13项目中使用eslint-plugin-rxjs-angular。 在他们的github page上写着。 为ESLint配置解析器和parserOptions。在这里,我使用.eslintrc.js文件进行配置: 然后是一个代码片段。 const { join } = require("path"); module.exports = { pars
..
我想使用RxJS(版本6)实现加载指示。在异步数据调用完成之前,组件中会显示一个加载指示符(微调)。我有一些规则要执行(这些规则是否正确可能是另一个问题,也许请留下评论): 如果数据早于1秒成功到达,则不应显示任何指示器(数据应正常呈现) 如果调用早于1秒失败,则不应显示任何指示(并显示错误消息) 如果数据到达晚于1秒,则应至少显示1秒的指示器(为防止微调控件闪烁,应在稍后渲染数据)
..
我从使用ANGLE中的Jest框架进行单元测试开始有一段时间了。然而,我陷入了需要对comineLatestRxJS操作符进行单元测试的情况。我的组件如下所示。 组件: public userData; public productData; constructor( private readonly userService: UserService, private
..
我有来自数组的多选选项和6个选项。其中一个选项与其他选项略有不同(它允许添加备注,而在其他选项中不允许)。当我选择这个选项和其中一个字段x(备注)时,在我删除它并再次选择后,该字段将为空(假设在第一种情况下我正在添加reark,在第二次我不是),所以多重选择将添加它两次!但我希望每个索引都有1个VELUE(不考虑其他字段)。我应该怎么做?另一个地方不同之处在于从服务器获取选定值,而在用户选择它后应
..
我对ANGLING、RXJ和NGRX不熟悉 我知道我们订阅观察对象并观察变化。我在Ngrxgetting started 中遇到了这段代码
Current Count: {{ count$ | async }} 问题是 推荐答案 正如@jonrSharpe提到的,这并没有什么不同。在幕后,异步管道将创建一个订阅并存储最新的值,这与您想要订阅并显示结果时需
..
我在角度2项目中工作,使用ngrx和rxjs技术。 现在我有一个问题: 我试着声明一个效果。 该效果为http请求,仅当其成功时我才想调用其他http-请求,因此仅当它也成功时-然后调度一个成功操作。 我已通过引发错误对其进行了测试,但它始终会调度操作! 请参阅: @Effect() createEntity$ = this.actions$.ofTyp
..
我有一个应用程序,所有的状态管理架构都是作为可观察的数据服务实现的。我试图弄清楚的是,创建共享列表和词典的最佳方式是什么,这些共享列表和词典将通过服务提供。我知道这听起来很简单--但由于我是角度8的新手--我仍然不能理解rxjs的所有最佳实践。 为了说明我的问题-这里是一个服务,一个用户列表,我希望它只使用一次数据(作为单一实例),并能够通过组件轻松获取 export class Ap
..
我正在尝试我的第一个角度8 Crud Web应用程序,并编写了一个页面来列出WebApi上的一些公司名称 我的服务正在正确获取数据,并且我能够在控制台上打印数据 //Service.ts export class CompanyService { allCompanys: Company[] constructor(private httpClient: HttpClient)
..
合成类似ReplaySubject但仅向第一个订阅者(当该订阅者连接时)发出一次累积序列的Rx可观测对象的优雅方法是什么?第一次订阅后,它应该与常规Subject一样。 这是.NET项目的答案,但我同样希望得到JavaScript/RxJS的回答。 我在谷歌上寻找了潜在的解决方案,最终我将推出我自己的解决方案,类似于how I approachedDistinctSubject。
..
我有一个在一种情况下返回EMPTY可观测对象的效果。我正在尝试测试此案例,但似乎想不出如何测试EMPTY可观察性? 我的代码如下: 效果: effect$ = createEffect(() => this.actions$.pipe( ofType(someAction), mergeMap(([action]) => { if
..
我有一个基于搜索词搜索员工的方法。 this._sub.pipe( debounceTime(500), filter(x => !!x), distinctUntilChanged(), switchMap(this.getResults.bind(this)) ).subscribe((d: IDisplayEmp[]) => { console.
..
我正在使用ANGLE编写应用程序,并且发现自己经常使用此模式: @Injectable(...) export class WidgetRegsitryService { private readonly _widgets: BehaviorSubject = new BehaviorSubject([]); public get widgets() { retu
..
嗨,我是新来的角度。 我不知道为什么不能在我的观察对象中设置新值 我的代码: resultJob: Observable = Observable.of("PENDING"); ngOnInit() { this.resultJob.subscribe(result => { result.next("SUCCESS") res
..
我在我的Angular4应用程序中使用可观察数据时遇到以下情况,我无法开始工作:我想收集我所有预订日期的汇总数据作为概览页面。获取所有的天数是一个可观察的过程,每天都有一个我必须检索的当天的预订量列表-同样是一个可观察到的来源。根据这张表,我计算出一天的总结。所有这些摘要我都想在结果的可观察对象中发出。 我尝试过很多更复杂的东西,但是内心的观察总是没有等待完成,我得到的是空洞的总结。我已经回
..
我正在尝试将可观察对象转换为BehaviorSubject。如下所示: a$ = new Observable() b$ = BehaviorSubject.create(new BehaviorSubject(123), a$) // 🔴 我也尝试过: a$ = new Observable() b$ = new BehaviorSubject(a$, 123) // 🔴
..
我读到toPromise()在RxJS7中已弃用,并将在RxJS8中删除。 我经常将它与Async Await语法一起使用在ANGLE中,以处理http调用。它被认为是反模式吗? 我理解流的概念,但是http调用只发出单个值。对于一个简单的http调用,我不明白可观察性的意义。接下来我应该用什么呢?我是否应该完全接受反应式编程? 推荐答案 为什么会发生这种情况? 如前所述here
..
我想了解ngIf的as local-var可选行为在哪里定义,例如: *ngIf="user$ | async as user" 尝试查看源代码中显而易见的地方,例如 https://github.com/angular/angular/blob/master/packages/common/src/directives/ng_if.ts 但代码中没有任何内容,只有文档。 有人知道此
..