React Redux - 在没有连接的情况下调用分派(不是来自反应组件)
React Redux - call dispatch without connect (not from a react component)
我有一个计划函数,它每 x 分钟从服务器获取一次数据,我希望它用响应更新状态:
api.fetchData().then(
(response) => {
dispatch(Actions.updateConfiguration(response));
}
};
这个函数不应该是一个 React 组件,因为它不渲染任何东西。
但是我似乎无法弄清楚如何在不使用 connect
的情况下注入 dispatch
函数,这需要它是一个反应组件。
谢谢。
我们有类似的事情(定期检查身份验证令牌是否仍然有效),我们做了以下事情。
在我们的小 "util" 函数中,我们接收 redux 存储作为参数
export function startSessionTimer(store) {
const intervalId = setInterval(() => {
if ( ... ) {
store.dispatch( ... );
clearInterval(intervalId);
}
}, (15 * 60 * 1000));
}
然后,在我们设置应用程序和创建商店的地方,我们还启动了计时器。
const store = configureStore( ... );
startSessionTimer(store);
我有一个计划函数,它每 x 分钟从服务器获取一次数据,我希望它用响应更新状态:
api.fetchData().then(
(response) => {
dispatch(Actions.updateConfiguration(response));
}
};
这个函数不应该是一个 React 组件,因为它不渲染任何东西。
但是我似乎无法弄清楚如何在不使用 connect
的情况下注入 dispatch
函数,这需要它是一个反应组件。
谢谢。
我们有类似的事情(定期检查身份验证令牌是否仍然有效),我们做了以下事情。
在我们的小 "util" 函数中,我们接收 redux 存储作为参数
export function startSessionTimer(store) {
const intervalId = setInterval(() => {
if ( ... ) {
store.dispatch( ... );
clearInterval(intervalId);
}
}, (15 * 60 * 1000));
}
然后,在我们设置应用程序和创建商店的地方,我们还启动了计时器。
const store = configureStore( ... );
startSessionTimer(store);