RxJs retry如何使用
刚开始接触RxJS,用的版本6,看了文档retry的用法。https://rxjs-cn.github.io/lea... 做实验如下:
import { interval, of, throwError } from 'rxjs';
import { take, map, retry } from 'rxjs/operators';
const numbers = interval(1000);
var example = numbers.pipe(
map((val) => {
if(val == 3) {
throw new Error('oops!');
} else {
return val;
}
},
retry(2)
));
example.subscribe({
next: (val:any) => console.log(val),
error: (val:any) => console.log(val.message)
});
这段代码打印,并没有retry,我是哪里用的不对呢?谢谢。
0
1
2
Error: oops!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只可意会不可言传
文档里是mergeMap,而你这里是map,问题就在这
可以看看弹珠图,配合实践进行理解,哪天开窍就明白了
retry(2)
放的地方不对,你放到 map 中了