javascript 在RxJS中自动取消订阅同步执行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 在RxJS中自动取消订阅同步执行相关的知识,希望对你有一定的参考价值。

const { Observable } = require('rxjs')

class ExecutableObservable extends Observable {
  execute(onError) {
    let returnValue

    const next = (
      value,
    ) => {
      returnValue = value
    }

    this
    .subscribe({
      complete: () => {},
      error: onError,
      next,
    })
    .unsubscribe()

    return returnValue
  }

  lift(operator) {
    const observable = new ExecutableObservable()

    observable
    .source = this

    observable
    .operator = operator

    return observable
  }
}

const createExecutableObservable = (
  source$,
) => {
  source$
  .__proto__ = new ExecutableObservable()

  return source$
}

module.exports = createExecutableObservable

以上是关于javascript 在RxJS中自动取消订阅同步执行的主要内容,如果未能解决你的问题,请参考以下文章

任何需要先取消订阅 RxJS()

RxJS 迁移 5 到 6 - 使用 TakeUntil 取消订阅

RxJS迁移5到6 - 取消订阅TakeUntil

取消 rxjs 中的 http 订阅

Angular + RxJS:使用 takeUntil 与简单取消订阅?

取消订阅 Rxjs Observables