Wpis z mikrobloga

1) Robisz jakiegos dispatcha akcji, ktora jest przechwytywana przez sage w celu wywolania requesta nr 1. Np. po kliku na jakis button
2) Jak request sie wykona to #!$%@? akcje, ze reguest sie wykonal poprawie lub inna, ze nie (yield put(reguest1SucessAction) lub yield put(reguest1FailedAction))
3) I teraz druga saga przechwytuje akcje reguest1FailedAction i wykonuje sie drugi request i podonie jak w pkt. jak sie uda to #!$%@? akcje success, jak
@pwn3r: aż strach pytać o kotlina xD

@andrew1985: to to wiem. Problem był taki, że pierwszy request to upload danych w tle, a drugi to dopiero parametry do tamtych danych jak nazwa itp. Oba odpalane z przycisków. Najbrzydziej to właśnie z taką flagą z pierwszego requesta wsadzić w intervala odpalającego się przy próbie drugiego requesta. Drugi zależny jest od pierwszego i nie tylko success czy failure, ale także dane z
@xDrope:

export function* watchRequestOneSaga() {
const watcher = yield takeEvery(REQUEST_ONE_ACTION, requestoOneSaga);
}

export function* requestoOneSaga(action) {
try {
const response = yield call(requestOne, action.id);

yield put(requestoOneAction(response));

} catch (error) {
yield put(requestoOneFailedAction(error));
}
}

export function* watchRequestTwoSaga() {
const watcher = yield takeEvery(REQUEST_TWO_ACTION, requestoTwoSaga);
}

export function* requestoTwoSaga(action) {
try {
const responseOfRequestOne = yield select(selectResponseOfRequestOne);
const response = yield call(requestTwo, responseOfRequestOne);

yield put(requestoTwoAction(response));

} catch (error) {
yield put(requestoTwoFailedAction(error));
}