微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – RxJS切换功能

有人可以解释一下RxJS中的开关功能吗?
我读了documentation但无法配置它,它是如何工作的.

最佳答案
如果您有可观察的可观察值流,则switch会将嵌套的observable展平为单个可观察值流.它将为您提供外部流生成的最新内部流的值.

举个例子可能更容易.假设您有一个文本框,用于控制从AJAX查询中收到的数据.让我们将此文本框称为页码.您的目标是显示用户在文本框中键入的页面的AJAX查询结果.您可以使用switch构建该数据的可观察流:

function getPageData(pageNumber) {
   // return the ajax query for this page
   return $.ajax("/url?page=" + pageNumber));
}

var pageNumberValue = // some observable of the page number values coming from the text Box

// this will be an observable of observables of the page data
var dataStreamOfStreams = pageNumberValue
    .map(pageNumber => getPageData(pageNumber);

// everytime you change pages,this will "switch" to the new ajax call
// and return the results from that new call.
var dataStream = dataStreamOfStreams.switch();

我希望这有帮助.

原文地址:https://www.jb51.cc/js/429079.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐