TL;DR 是否可以在 observable 的管道内使用 forkJoin?
全文:我有一个返回对象数组的 Observable 的服务。对于这些对象中的每一个,我都需要再次调用返回一个可观察对象的服务,并对每个结果应用另一个操作。
op1 ->[] ----> op2 --> op3
\\-> op2 --> op3
\-> op2 --> op3
Run Code Online (Sandbox Code Playgroud)
我目前的解决方案是这样的:
op1 ->[] ----> op2 --> op3
\\-> op2 --> op3
\-> op2 --> op3
Run Code Online (Sandbox Code Playgroud)
我想摆脱第一个订阅并改用管道。问题是 forkJoin 的教程将其显示为对象或数组传递到的源,而不是管道的一部分。
从地图内部调用 forkJoin
.pipe(
map(value=>forkJoin(value))
Run Code Online (Sandbox Code Playgroud)
返回Observable<Observable<resolved forkJoin arguments>>
我可能需要递归订阅。好像不是什么好办法。
无参数地将 fJ 放入管道中
this.tournamentParticipantService.getNotAssigned(this.tournamentId).subscribe(
(players: Player[]) => {
let dict = {};
players.forEach(player => {
dict[player.id] = this.teamService.add(
{
id: 0,
members: [],
tournament: this.tournamentId,
name: player.name + " " + …
Run Code Online (Sandbox Code Playgroud) 我需要使用或不使用某些库来编译我的程序,具体取决于它运行的两个主机中的哪一个.我不知道HOST=
在makefile 的右侧使用什么来使我的工作符合我的要求:
ifeq(${HOST},${ADDITIONAL_LIBS_HOST})
ADD_LIBS= ...
Run Code Online (Sandbox Code Playgroud)
${ADDITIONAL_LIBS_HOST}
是来自的主人的名字
echo ${HOSTNAME}