React Redux-在没有连接的情况下调用调度(不是来自React组件)

React Redux - call dispatch without connect (not from a react component)

本文关键字:React 组件 调度 调用 Redux- 连接 情况下      更新时间:2023-09-26

我有一个计划函数,它每x分钟从服务器获取一次数据,我希望它用响应更新状态:

api.fetchData().then(
    (response) => {
        dispatch(Actions.updateConfiguration(response));
    }
};

此函数不应该是react组件,因为它不会渲染任何内容。

然而,我似乎不知道如何在不使用connect的情况下注入dispatch函数,这需要它是一个react组件。

谢谢。

我们也有类似的事情(反复检查auth令牌是否仍然有效),我们做了以下操作。

在我们的小"util"函数中,我们接收作为参数的redux存储

export function startSessionTimer(store) {
    const intervalId = setInterval(() => {
        if ( ... ) {
            store.dispatch( ... );
            clearInterval(intervalId);
        }
    }, (15 * 60 * 1000));
}

然后,在我们设置应用程序和创建商店的地方,我们也会启动计时器。

const store = configureStore( ... );
startSessionTimer(store);