В приведенном ниже коде я использую return, чтобы остановить выполнение функции генератора и позволить саге, которая вызывала генератор, продолжить работу.Я не совсем понимаю, что происходит за кулисами.Хорошо ли возвращение в приведенном ниже коде или оно будет иметь непредвиденные последствия?
export function* getSessionToken(user: string | CognitoUser, redirect: string = '') {
try {
return yield call(refreshAwsSession, user, 'sessionToken');
} catch (error) {
if (redirect) {
const search = '?redirect=' + encodeURIComponent(redirect);
yield put(push({ pathname: '/signin', search: search }));
return;
}
yield put(push('/signin'));
}
}