複数の観測値からオブジェクト応答を取得するにはどうすればよいですか?私のエピックがある観測可能な応答を1つに結合する
はこの好き:私は必要なのは、このgetMetaDataSuccess({ couriers, items, airports })
ようcourierApi()
、itemCategoriesApi()
とairportsApi()
からの応答で私の機能getMetaDataSuccess()
にオブジェクトを渡すことですが、最初に私はすべての3つの約束を待つ必要が
export function metaDataEpic(action$: ActionsObservable<metaDataActions>) {
return action$.ofType(META_DATA_REQUEST)
.mergeMap((action: metaDataActions) => {
const { language } = action;
return Observable.merge(
Observable.fromPromise(couriersApi().then(r => r.json())),
Observable.fromPromise(itemCategoriesApi({ language }).then(r => r.json())),
Observable.fromPromise(airportsApi().then(r => r.json())))
.flatMap(res => {
console.log(res);
return Observable.of(getMetaDataSuccess({}))
});
});
}
終了し、何らかの形で応答としてオブジェクトに結合します。
私のコードでは、APIの応答を印刷して、getMetaDataSuccess
を3回呼び出しています。 enter code here
あなたは括弧が欠落しています'r.json())' 'Promise.all(' また、私は試みましたが、console.log – user3610155
@ user3610155感謝していません、私はタイプミスを修正し、ライブデモを追加しました。それを実行し、それは動作します。 –