为什么我们应该在Angular中的map()上使用subscribe()?
发布时间:2020-12-17 08:01:28 所属栏目:安全 来源:网络整理
导读:我试图利用angular2中的observables,并对为什么我应该使用map()而不是subscribe()感到困惑. 假设我从webApi获取值,就像这样 this.http.get('http://172.17.40.41:8089/api/Master/GetAllCountry') 现在使用subscribe(成功,错误,完成)我可以获得成功回调的所
我试图利用angular2中的observables,并对为什么我应该使用map()而不是subscribe()感到困惑.
假设我从webApi获取值,就像这样 this.http.get('http://172.17.40.41:8089/api/Master/GetAllCountry') 现在使用subscribe(成功,错误,完成)我可以获得成功回调的所有值,我可以返回完整回调的值.如果我可以完成所有这些功能,那么map()的需求是什么?它有什么优势吗? 简而言之,为什么人们应该这样写: this.http.get('http://172.17.40.41:8089/api/Master/GetAllCountry') .map(r=>{}) .subscribe(value => { },error => error,() => { }); 当他们可以简单地写这个没有map函数: this.http.get('http://172.17.40.41:8089/api/Master/GetAllCountry') .subscribe(value => { },() => { });
如果要返回一个Observable,其他一些代码可以订阅,但是您仍然希望在当前方法中操作数据事件,请使用map.
observable的实际用户需要subscribe(),因为没有subscribe(),observable根本不会被执行. (forEach()或toArray()以及其他可能也可以执行observable而不是subscribe()) subscribe()返回无法订阅的订阅,但可用于取消订阅. map()返回一个可以订阅的Observable. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 解决Bootstrap模态窗口Modal中使用Kindeditor或UEditor编辑
- bootstrap fileinput之手机图片上传显示旋转问题
- AngularJS的Provider, Value, Constant, Service, Factory,
- scala – 什么是“带Int的字符串”应该是什么意思?
- 关于Log4net在webservice中的使用
- 角度 – 离子2轻敲与点击
- angular – EventEmitter和EventEmitter之间有什么区别?
- macos – 如何从shell中检测Mac OS X中的当前区域设置
- vim – 清除当前行的简短命令?
- angularjs – 将选择列表绑定到布尔值时的奇怪绑定/验证行为