He estado luchando para que esto funcione. Estoy escuchando la acción setTeam y comprobando si la imagen es nula de la carga útil. Si es nulo, llame a la API y obtenga blob y conviértalo a base64 y envíe la acción de actualización.
El código se ve así.
fetchImage = createEffect(() => this.actions$.pipe( ofType(teamActions.setTeam), withLatestFrom(this.store.pipe(select(selectTeam))), switchMap(([payload]) => { if (!payload.team.teamLogoImage) { return this.teamService.getImage(payload.team.id) .pipe(map((value => { ImageUtils.getBase64(value); //returns promise return teamActions.updateTeamLogoImage({teamLogoImage: val}); }))) } }) )); El problema aquí es que ImageUtils.getBase64 devuelve Promise y necesito esperar hasta que se resuelva esta promesa antes de enviar la acción updateTeamLogoImage. ¿Cómo se puede lograr esto?