我正在开发一个项目,用户可以根据用户设置获得各种电影或音乐建议。我目前有三个缩小器来管理电影屏幕,音乐屏幕和用户设置。
我注意到在调度我的动作时,我总是要将我的用户设置添加为参数,例如:
getMusic(query, { ...userSettings})
getMovie(query, { ...userSettings})
我的问题是:由于用户设置将始终包含在我的调度操作中,是否有另一种方法可以将 userSettings 的状态传递给我的各种函数调用,而无需连接我的<组件级别的strong> userSettings ?
答案 0 :(得分:0)
您应该考虑将middleware redux-thunk添加到您的项目中。
您的动作创建者可以看起来像这样:
const getMusic = (query) => (dispatch, getState) => {
const { userSettings } = getState();
// do something with userSettings
dispatch(someOtherActionCreator(...));
}
关于这一点的好处是你可以在调度动作时掌握完整的redux存储状态。