Warten Sie, bis die Aktion fertig nehmen, funktioniert nicht (redux-saga)
Ich bin mit redux-saga & redux verarbeiten asynchroner Prozess zu reagieren, aber put&take nicht funktioniert. Irgendeine Idee warum?
In saga generator-Funktion, schicke ich die Aktion test-action
durch put
.
Dann will ich warten, bis die Aktion abgeschlossen ist, also versuche ich, es zu tun take
, aber take
ist nicht genannt.
In der redux-devtool, die ich finden kann test-action
sicherlich ausgelöst.
function* firstActionSaga(){
// dispatch secondAction
yield put(secondAction())
// If secondAction finished, the below line should be called.
yield take("SECOND_ACTION")
console.log("second action finished.")
}
function* rootSaga() {
yield all([
// Wait for firstAction, and start firstActionSaga
yield takeEvery(FIRST_ACTION, firstActionSaga)
])
}
Erwartet
- Warten Sie, bis firstAction, und starten Sie firstActionSaga
- Versand secondAction von
put
- Warten Sie, bis secondAction, und etwas zu tun.
Eigentliche
- Warten Sie, bis firstAction, und starten Sie firstActionSaga
- Versand secondAction von
put
take
wird nicht ausgelöst