当前位置: 首页 > 知识库问答 >
问题:

可观察与回调[重复]

夏侯博
2023-03-14

我已经做javascript有一段时间了。然而,我对Angular 2还比较陌生,所以我对可观测的东西几乎一无所知。当我读到对可观测事物的描述时,它们听起来很像我已经知道的回调。当我问谷歌时,有回调和promise之间的比较,也有promise和可观察之间的比较。然而,我找不到回调和可观察之间的任何比较。

回调和可观察之间有什么区别?

共有1个答案

栾和风
2023-03-14

正如本线程中所讨论的,可观测数据和promise之间的主要区别在于promise处理一次性异步事件,这些事件可以解决或失败,而可观测数据通过附加到异步流数据或事件源的各种操作启用可组合流。最后,为了将可观测或promise的结果传递回同步代码,您将需要一个回调来作为数据接收器进行操作,因此这两者并不相互排斥。这就是说,与promise一样,可观察性允许使用可组合函数以声明的方式定义异步数据流上的操作。在可观察的情况下,您可以使用单个回调作为接收器将结果传递回同步代码,而不必像使用纯回调编写异步操作那样嵌套函数调用和/或执行递归函数调用。

 类似资料:
  • 问题内容: 我一直在阅读Observer模式,以保持UI处于最新状态,但仍然看不到它的用途。即使在我的特定对象中通知了我的MainActivity然后运行update();方法我仍然无法使用Pet对象来获取更新值,因为该对象是在Oncreate中创建的…而我只是无法创建新对象,因为那时变量会有所不同..这是我的实施,它似乎不起作用。 观察者/ MainActivity 可观察/宠物 问题答案: 首

  • 我对Observables和RxJs是新手,我想对回报进行调整。如果第一个选择器返回某个值,我希望第二个选择器可以观察到。但是如果第一个选择器没有返回那个特定的值,我想返回false,而不是(false)。我已经走了这么远,但这返回了一个可观察的结果

  • 问题内容: 我一直在寻找新的rx java 2,但我不确定我是否已经明白了这个主意… 我知道我们所拥有的并没有支持。 因此,基于例如,可以说我有有: 在大约128个值之后,这将崩溃,这很明显我消耗的速度比获取项目要慢。 但是,我们有相同的 即使我延迟使用它,它仍然完全不会崩溃。为了工作,可以说我放了一个运算符,崩溃已经消失了,但并不是所有值都被发出。 因此,我目前在脑海中找不到答案的基本问题是,为

  • 我一直在看新的rx java 2,我不太确定我是否理解了< code >背压的概念... 我知道我们有没有支持的和有背压。 因此,基于示例,假设我有与: 这将在大约128个值之后崩溃,很明显,我的消费速度比获取物品要慢。 但是< code>Observable也是如此 这将不会崩溃,即使我把一些消费延迟,它仍然工作。为了使< code >可流动工作,假设我将< code>onBackpressur

  • 有人能向我解释一下为什么运算符可以接受返回或的函数吗? 官方文件说: FlatMap运算符通过将您指定的函数应用于源可观察对象发出的每个项目来转换可观察对象,其中该函数返回本身发出项目的可观察对象。 为什么它也可以返回数组? 例如,它们都是有效的: 但这不起作用:

  • 在一个Android应用程序的开发过程中,我遇到了这个设计难题,我现在无法解决。我将感谢任何想法、变通方法或干净的解决方案:)我将尽可能地简化它: 一切都是从一个通用的观察者模式实现开始的。有一个主题在它的公共方法调用时改变状态;有观察者对这些变化作出相应的反应。在这种情况下,主题是一个有状态的主题,这意味着它有一个像自动机一样变化的内部状态控制器(一个int)。每次它的状态发生变化时,它都会像往