首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在RxJs 5.5.6中使用管道运算符

如何在RxJs 5.5.6中使用管道运算符
EN

Stack Overflow用户
提问于 2019-10-07 18:53:11
回答 1查看 335关注 0票数 0

我正在学习Rxjs运算符之类的东西。我知道地图运算符是用来转换数据的。但是使用管道运算符,我无法使用Map运算符的方法。我正在使用Rxjs 5.5.6,我有一个可观察到的类似

代码语言:javascript
运行
复制
const source = Observable.of("david");

订阅该可观察对象并将该数据转换为大写形式如下所示

代码语言:javascript
运行
复制
    source.pipe(
      map(x => x.toString().toUpperCase())
    ).subscribe(data => console.log(data));

但当我删除映射操作符中的toString()时。我不能再使用toUpperCase()了,我的意思是为什么我需要将我的数据转换成字符串,然后执行toUpper()。谁能让我知道我错过了什么。

EN

回答 1

Stack Overflow用户

发布于 2019-10-07 19:11:12

map操作符是RxJs5中observable类上的一个方法,因此您不需要管道

代码语言:javascript
运行
复制
source.map(x => x.toString().toUpperCase());

引入管道运算符的原因是为了在RxJs6中对运算符函数进行树抖动。

代码语言:javascript
运行
复制
const source = Rx.Observable.of('david');

source.map(x => x.toString().toUpperCase()).subscribe(data => console.log(data));
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/5.5.6/Rx.min.js"></script>

为什么你还在使用5.5.6?

代码语言:javascript
运行
复制
const { of } = rxjs;
const { map } = rxjs.operators;

const source = of('david');

source.pipe(
  map(x => x.toString().toUpperCase())
).subscribe(data => console.log(data));
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/6.5.3/rxjs.umd.min.js"></script>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58268108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档