rxjs中可以做到在流之间转换,其中一个著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。就是switch,它的意思和英文意思一样【转载请注明来源】【原创不易,请尊重版权】,即从一个流切换到另外一个流。但是,单纯【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。从一个流切换到另外一个流是没有意义的,需【版权所有,侵权必究】未经授权,禁止复制转载。要将前一个流中的数据在切换时,要将它的数【关注微信公众号:wwwtangshuangnet】【作者:唐霜】据传给下一个流中去使用。rxjs中的sw转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。itchMap就是要做这样一件事,它接收【本文首发于唐霜的博客】【关注微信公众号:wwwtangshuangnet】一个函数,这个函数的参数是上一个流遗留下【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。来的数据,而它需要返回一个新的流,这个流【本文首发于唐霜的博客】未经授权,禁止复制转载。中你可以使用上一个流遗留下来的数据。
未经授权,禁止复制转载。【作者:唐霜】本文版权归作者所有,未经授权不得转载。著作权归作者所有,禁止商业用途转载。Rx.Observable.fromEvent(document, ‘mousedown’)
.map(e => e.target)
.switchMap(target => Rx.Observable.fromEvent(document, ‘mousemove’).map(e => {
return {
startX: target.offsetX,
startY: target.offsetY,
moveX: e.pageX,
moveY: e.pageY,
}
}))
.subscribe(pos => console.log(pos))
你可以看到,switchMap里面的函数【本文首发于唐霜的博客】【版权所有,侵权必究】接收mousedown这个流给的targ【版权所有,侵权必究】未经授权,禁止复制转载。et,然后再返回一个新的关于mousem【版权所有,侵权必究】【版权所有,侵权必究】ove的流,并且对这个新的流作map处理转载请注明出处:www.tangshuang.net原创内容,盗版必究。,过程中把前面的target也用上了。在【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.netswitch发生的时候,mousedow【本文首发于唐霜的博客】【本文受版权保护】n的事件监听就给丢掉了。后面就全是跟mo【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。usemove相关的监听。
【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】总结一下,rxjs里面的switch就是未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net切换流的操作,切换的时候,前一个流会被丢【作者:唐霜】【本文首发于唐霜的博客】掉。
【未经授权禁止转载】原创内容,盗版必究。未经授权,禁止复制转载。
