【发布时间】:2019-07-01 07:33:25
【问题描述】:
我正在处理需要每 60 秒后连续调用单个 API 的情况
我关心的是如何使用 redux-saga 调用相同的 API 请求
我使用的是普通的 redux-saga 动作,例如,获取员工列表,它每 60 秒获取一次员工列表
使用redux-saga、react-redux和react
【问题讨论】:
标签: reactjs redux react-redux redux-saga
我正在处理需要每 60 秒后连续调用单个 API 的情况
我关心的是如何使用 redux-saga 调用相同的 API 请求
我使用的是普通的 redux-saga 动作,例如,获取员工列表,它每 60 秒获取一次员工列表
使用redux-saga、react-redux和react
【问题讨论】:
标签: reactjs redux react-redux redux-saga
随着新版本的 Redux 延迟发生了一些变化。
例子:
import { delay, put, takeLatest, all } from 'redux-saga/effects';
export function* fetchContinuously(action) {
yield call(api);
yield delay(60000);
yield put({ type: "FETCH_CONTINUOUSLY" })
}
function* actionWatcher() {
yield takeLatest('FETCH_CONTINUOUSLY', fetchContinuously)
}
export default function* rootSaga() {
yield all([
actionWatcher(),
]);
}
【讨论】:
import { delay } from 'redux-saga';
import { call, put, takeLatest, all } from 'redux-saga/effects';
export function* fetchContinuously(action) {
yield call(api);
yield call(delay, 60000);
yield put({ type: "FETCH_CONTINUOUSLY" })
}
function* actionWatcher() {
yield takeLatest('FETCH_CONTINUOUSLY', fetchContinuously)
}
export default function* rootSaga() {
yield all([
actionWatcher(),
]);
}
【讨论】: