为什么需要我使用this.props.user.user.displayName而不是this.props.user.displayName?反应

时间:2019-01-07 21:27:13

标签: javascript reactjs firebase redux

在尝试将Firebase用户数据保存到Redux存储中时遇到一些问题,我已经尝试了很多方法将数据保存在我的存储中,例如:

const initialState = {
  logged: null,
  user: {}
};

在我的用户对象中,我希望从Firebase中获得所有数据。我这样发送数据:

firebase.auth().onAuthStateChanged(user => {
  if (user) {
    store.dispatch({
      type: "USER_LOGIN",
      payload: { user: { ...user.providerData[0] } }
    });
  } else {
    store.dispatch({ type: "USER_LOGOUT" });
  }
});

为什么我何时要访问需要使用的数据     this.props.user.user.displayName?对于一对用户,请注意,如果我仅使用一个用户,我将收到未定义的消息(很明显)。

1 个答案:

答案 0 :(得分:0)

firebase.auth().onAuthStateChanged(user => {
  if (user) {
    store.dispatch({
      type: "USER_LOGIN",
      payload: user.providerData[0]
    });
  } else {
    store.dispatch({ type: "USER_LOGOUT" });
  }
});

行得通吗?刚刚修改过payload