Угловой 6-кратный HTTP-запрос RxJs - PullRequest
0 голосов
/ 29 октября 2018

Я новичок в Angular 6 и с трудом понимаю MergeMap и ConcatMap. Я пытаюсь добиться вызова API, который возвращает следующий пример:

JSON-объект

Json object

Мне нужно взять всю запятую inputDatasets.datasetName, разделенную на строку, и сделать еще один вызов API с этим вызовом API, чтобы вернуть массив inputDatasets.version для обновления первого вызова API. Я вижу так много разных применений concatMap map, pipe и mergeMap и немного перегружен тем, что использовать и как реализовать.

1 Ответ

0 голосов
/ 29 октября 2018

Я бы использовал switchMap

service.getSpreadSheetdata().pipe(
    map(spreadSheetdata => transformSpreadSheetdata(spreadSheetdata)),
    switchMap(transformedSpreadSheetdata => service.apiCall(transformedSpreadSheetdata))
).subscribe(apiData => doStuffWithApiData(apiData));

Вызовите метод, чтобы получить данные электронной таблицы, затем сопоставьте их с формой, необходимой для вызова API, и затем переключите карту преобразованных данных, чтобы передать их вызову API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...