2016-11-07 4 views
0

Ich versuche, eine Saga von innen aufzurufen (siehe Beispiel unten), aber wenn ich benutze put senden, wird dies nicht übernommen. Beispiel:Saga von innerhalb aufrufen

function * example() { 
    while (true) { 
    yield take('initialAction') 
    const someAction = yield call(apiClient.someClientAction, parameter) 
    yield put({ type: initialAction' }) 
    } 
} 

Ich frage mich, ob dies das richtige Muster ist oder vielleicht fehlt mir etwas in der Dokumentation.

Vielen Dank im Voraus!

Antwort

0

Für alle an einer Lösung interessiert, siehe unten:

function * example() { 
    const chan = yield actionChannel('initialAction') 
    while (true) { 
    yield take(chan) 
    const someAction = yield call(apiClient.someClientAction, parameter) 
    yield put({ type: initialAction' }) 
    } 
} 

Weitere Informationen check the documentation und die github answer