我想在reducer中设置递归对象

时间:2018-03-08 18:31:48

标签: react-native react-redux reducers

我发送获取userInfo的get请求。然后我想以递归方式添加此userInfo。

这是我的减速机

case types.USER_INFO_SUCCESS:
      return {
        ...state,
        userInfo: action.payload,
      }

所以每次我都要递归地添加这个userInfo

userInfo: {
 fname: '',
 lname: '',
 userInfo: {
  fname: '',
  lname: '',
  userInfo: {
   fname: '',
   lname: '',
   userInfo: {

   }
  }
 }
}

所以每次请求成功我想要递归地添加对象。

1 个答案:

答案 0 :(得分:0)

我觉得这样的事情可能有用:

case types.USER_INFO_SUCCESS:
    let current = state;
    while (current.hasOwnProperty('userInfo')) {
        current = current.userInfo;
    }
    current.userInfo = action.payload;      
    return { ...state }