在Redux Reducer中访问全局状态?

时间:2020-08-28 12:36:15

标签: reactjs redux react-redux

如何从我的reducer访问全局状态?

当前在我的操作文件中,我具有此功能,许多功能都需要userId:

export const getMyUserData = (userId) => (dispatch) => {
  dispatch(fetchingData()); 
  accessing(`api/${userId}`, (res) => {
    fetchComplete(res);
  });
};

代替传递Id值。

const Id = useSelector(state => state.auth.userId)
export const getMyUserData = () => (dispatch) => {
};

这是访问全局状态的正确方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用传递给thunk的第二个参数来访问当前状态。

const getUserId = state => state.auth.userId

export const getMyUserData = () => (dispatch, getState) => {
  const userId = getUserId(getState())

  dispatch(fetchingData()); 

  accessing(`api/${userId}`, (res) => {
    fetchComplete(res);
  });
};