Я использую "redux-saga": "^ 1.0.2"
Я хотел издеваться над своими API-интерфейсами, используя redux-saga, и не нашел правильных ответов в Интернете.
Я наконец-то получил очень простое, но простое решение: использование Promise.
Не могли бы вы дать мне отзыв об этой технике?У вас есть лучшие рекомендации?
import { takeEvery, call, put } from "redux-saga/effects";
let mock = 1
function getdata() {
if (mock === 0) {
return fetch("https://your_own_address").then(response =>
response.json()
);
}
else {
return new Promise(function(resolve, reject) {
resolve({data: {id: 1}})
})
}
}
export default function* watcherSaga() {
yield takeEvery("GET_DATA", workerSagaGetData);
}
function* workerSagaGetData() {
try {
const payload = yield call(getdata);
yield put({ type: "DATA_SUCCESS", payload });
} catch (e) {
yield put({ type: "DATA_ERROR", payload: e });
}
}