Necesito obtener resultados de api y suscribirlos a variable. mi codigo es
getInnerData = (obj: CampaignLineItem) => { let packetLineItemsParams = graphqlHelper.getWhereParams(); packetLineItemsParams.where._and.push({ packet: { _eq: obj.Packet }, }); let tempObj: any = { ...obj }; this._campaignLineItemService .getLineItemsByPacket(packetLineItemsParams) .subscribe((data) => { tempObj.innerDataItems = data.data; obj = tempObj; return obj; }); }; public mapObjects = (items: CampaignLineItem[]): Observable<CampaignLineItem[]> => { let usersData: CampaignLineItem[] = items.map((obj) => ({ ...obj, innerDataItems: this.getInnerData(obj), })); return usersData; }; this.mapObjects( items ).subscribe((data) => { this.dataSource.data = data; }); Recibo el siguiente error al regresar
Cualquier idea de por qué
El tipo de retorno de mapObjects es Observable<CampaignLineItem[]> . Eso no es CampaignLineItem[] , que es usersData .
Creo que esto es lo que puedes hacer para superar este error:
import { of } from 'rxjs'; ... return of(usersData);