繁体   English   中英

使用Redux的React-Native应用中的状态问题

[英]Issue with state in react-native app using redux

我正在尝试在反应本机Flatlist组件中获取onEndReached其他数据。

它工作得很好,除了我无法设法将元素添加到状态中,而现在唯一起作用的是获取所有数据以及所需的其他数据。

目前可以使用,但不是我想要的。

case FETCH_NEARBY:
  return { ...state, nearby: action.payload.data.nearby };

相反,我想使以下逻辑起作用:

case FETCH_NEARBY:
  return { ...state, nearby: [ ...state.nearby, ...action.payload.data.nearby ] };

但是上面的代码不起作用,只是不再返回附近的状态。

知道如何解决吗?

您需要添加一个临时值。 您正在尝试将状态附加到状态。

const updateNearby = (prev, newValue) => {
  return [ ...prev, newValue ]
}

case FETCH_NEARBY:
  const interimValue = updateNearby(
    state.nearby, 
    ...action.payload.data.nearby 
  )

  return { ...state, nearby: interimValue }

也许不用复制有效负载就可以尝试吗?

case FETCH_NEARBY:
  return { 
    ...state, 
    nearby: [ ...state.nearby, action.payload.data.nearby ] 
  };

只要未定义action.payload.data.nearby此代码即可正常工作。 希望有帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM