I use redux-saga and I created a generator checkUsername which perform the API call. I though that const username will equal to response from API, but I've got undefined.
function* checkUsername(action) {
try {
const username = yield call(Api.checkUsername, action.username);
yield put({type: actions.USERNAME_CHECK_SUCCEEDED, username});
} catch (e) {
yield put({type: actions.USERNAME_CHECK_FAILED, message: e.message});
}
}
Although in my checkUsername function, which call API res is equal {"isExist": false}:
checkUsername(username) {
fetch(url, {
'GET',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
}
}).then(response => response.json())
.then(res => res)
.catch(error => console.error(error));
},
Why my const username is not equal {"isExist": false}?
In your checkUsername function you need to return the call to fetch().
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With