Redux Saga: как поместить `yield put ()` в обработчик событий? - PullRequest
0 голосов
/ 03 мая 2020

Я использую Redux saga и OneSignal в своем приложении React Native. В моей саге у меня есть следующая функция генератора:

function* getOneSignalIDs() {
    try {
        OneSignal.init(appID)
        OneSignal.addEventListener('ids', (device) => {
            yield put(OneSignalActionCreators.getOneSignalIDsSuccess(device.pushToken, device.userId));
        });
    } catch(error) {}
}

Проблема с этим кодом в том, что yield put должен быть внутри функции генератора, но мой слушатель событий не является генератором.

Кто-нибудь знает, как я могу подойти к этому?

...