前言

RxJS是一种针对异步数据流编程工具,或者叫响应式扩展编程;可不管如何解释RxJS其目标就是异步编程,Angular引入RxJS为了就是让异步可控、更简单。可是最近在升级中遇到了一些问题,下面就来给大家介绍下,给同样遇到这个问题发朋友们一些参考,下面话不多说了,来一起看看详细的介绍吧。

Angular 5.0.5升级RxJS到5.5.3报错:

ERROR Error: Uncaught (in promise): EmptyError: no elements in sequence
EmptyError: no elements in sequence
 at new EmptyError (EmptyError.js:28)
 at FirstSubscriber._complete (first.js:154)
 at FirstSubscriber.Subscriber.complete (Subscriber.js:122)
 at MergeMapSubscriber._complete (mergeMap.js:150)
 at MergeMapSubscriber.Subscriber.complete (Subscriber.js:122)
 at MapSubscriber.Subscriber._complete (Subscriber.js:140)
 at MapSubscriber.Subscriber.complete (Subscriber.js:122)
 at EmptyObservable._subscribe (EmptyObservable.js:83)
 at EmptyObservable.Observable._trySubscribe (Observable.js:172)
 at EmptyObservable.Observable.subscribe (Observable.js:160)
 at new EmptyError (EmptyError.js:28)
 at FirstSubscriber._complete (first.js:154)
 at FirstSubscriber.Subscriber.complete (Subscriber.js:122)
 at MergeMapSubscriber._complete (mergeMap.js:150)
 at MergeMapSubscriber.Subscriber.complete (Subscriber.js:122)
 at MapSubscriber.Subscriber._complete (Subscriber.js:140)
 at MapSubscriber.Subscriber.complete (Subscriber.js:122)
 at EmptyObservable._subscribe (EmptyObservable.js:83)
 at EmptyObservable.Observable._trySubscribe (Observable.js:172)
 at EmptyObservable.Observable.subscribe (Observable.js:160)
 at resolvePromise (zone.js:824)

这应该是RxJS升级导致的,参考issue。

方法一

在所有的route里加上pathMath:"full",如

const routes: Routes = [
 { path: "", component: IndexComponent },
 { path: "home", component: HomeComponent },
 { path: "about", component: AboutComponent },
 ...
];

改为

const routes: Routes = [
 { pathMatch: 'full', path: "", component: IndexComponent },
 { pathMatch: 'full', path: "home", component: HomeComponent },
 { pathMatch: 'full', path: "about", component: AboutComponent },
 ...
];

方法二

RxJS降为版本5.5.2。

注意:降版本时一定要把之前的卸载掉。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

标签:
angular5,rxjs,angular,rxjs,rxjs,错误处理

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。