在这个大理石图中mergeMap https://rxjs-dev.firebaseapp.com/api/operators/mergeMap,你怎么读这个表达?
// Kind of, looks like an em-dash near the end
mergeMap(i => 10*i--10*i--10*i--|)
mergeMap
maps i
到由字符串表示的可观察量10*i--10*i--10*i-|
。该字符串包含大理石语法 https://rxjs-dev.firebaseapp.com/guide/testing/marble-testing#marble-syntax代表虚拟时间内发生的事件。
文档中使用的主要字符是:
-
-
帧:1“帧”的虚拟时间流逝
-
[a-z0-9]
任何字母数字字符:表示生产者信令发出的值next()
.
-
|
完成:可观察的成功完成。这是可观察到的生产者信号complete()
.
-
#
error:终止 observable 的错误。这是可观察到的生产者信号error()
.
So 10--10--10-|
将是图片中第二个可观察量的表达式。
例如
const tens$ = timer(0, 4).pipe(take(3), mapTo(10))
10*i--10*i--10*i-|
是当您将发出的每个值相乘时得到的可观察值的表达式10--10--10-|
with i
.
e.g.
of(1,3,5).pipe(
mergeMap(i => tens$.pipe(map(v => v*i)))
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)