React Redux - 没有连接的调用调度(不是来自反应组件)

时间:2016-07-19 12:42:14

标签: javascript reactjs redux react-redux

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

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

此函数不应该是反应组件,因为它不会呈现任何内容。

然而,我似乎无法弄清楚如何在不使用dispatch的情况下注入connect函数,这需要它作为反应组件。

感谢。

1 个答案:

答案 0 :(得分:4)

我们有类似的事情(对身份验证令牌仍然有效的反复检查)我们做了以下事情。

在我们的小" util"函数我们收到redux商店作为参数

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

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

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