javascript RxJS中的同步执行
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript RxJS中的同步执行相关的知识,希望对你有一定的参考价值。
const { Observable } = require('rxjs')
class ExecutableObservable extends Observable {
execute(onError) {
let hasExecuted = false
let returnValue
const next = (
value,
) => {
if (hasExecuted) {
console
.error(
new Error(
"Cannot return multiple values in `createExecutableObservable`. Make sure your pipeline returns only a single value and doesn't use asynchronous operators."
),
)
}
returnValue = value
}
this
.subscribe({
complete: () => {},
error: onError,
next,
})
hasExecuted = true
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中的同步执行的主要内容,如果未能解决你的问题,请参考以下文章
javascript 具有发生器的同步RxJS执行
javascript 在RxJS中自动取消订阅同步执行
javascript 使用RxJS的同步传感器执行错误
javascript 同步RxJS使用`from`
javascript 使用BehaviorSubject的同步RxJS不正确
javascript 具有自动阵列兼容性的同步RxJS