如何在连接组件之外访问我的redux商店的当前状态?

时间:2017-12-15 17:38:49

标签: react-redux

我正在开发一个项目,用户可以根据用户设置获得各种电影或音乐建议。我目前有三个缩小器来管理电影屏幕,音乐屏幕和用户设置。

我注意到在调度我的动作时,我总是要将我的用户设置添加为参数,例如:

getMusic(query, { ...userSettings})
getMovie(query, { ...userSettings})

我的问题是:由于用户设置将始终包含在我的调度操作中,是否有另一种方法可以将 userSettings 的状态传递给我的各种函数调用,而无需连接我的<组件级别的strong> userSettings ?

1 个答案:

答案 0 :(得分:0)

您应该考虑将middleware redux-thunk添加到您的项目中。

您的动作创建者可以看起来像这样:

const getMusic = (query) => (dispatch, getState) => {
    const { userSettings } = getState();
    // do something with userSettings
    dispatch(someOtherActionCreator(...));
}

关于这一点的好处是你可以在调度动作时掌握完整的redux存储状态。