从 flatList onRefresh 访问后,我的 redux 道具给了我空数据
My redux prop gives me empty data after access it from flatList onRefresh
如果我第一次通过 useEffect
调用我的 reload
方法,它包含我的数据,但如果我在运行时通过 onRefresh
调用,它会给我空数据。
为什么?我应该如何保存它?是在哪个线程onRefresh
调用的问题吗?
有关我的项目的更多信息,请查看此 ,可能是同一问题。
const MyScreen = ({ items }) => {
const [initialItems, setInitialItems] = useState(items)
useEffect(() => {
reload()
}, [])
const reload = () => {
console.log(initialItems) // same value
console.log(items) // same value
}
return (
<FlatList
...
refreshControl={
<RefreshControl
refreshing={isRefreshing}
onRefresh={() => reload()}
/>
}
...
/>
)
}
const mapStateToProps = (state) => {
return {
items: state.items, // I tried this also with [...state.items]
}
}
我的错误是这样复制我的数组:xArray = yArra
这意味着通过引用而不是通过值调用。
如果我第一次通过 useEffect
调用我的 reload
方法,它包含我的数据,但如果我在运行时通过 onRefresh
调用,它会给我空数据。
为什么?我应该如何保存它?是在哪个线程onRefresh
调用的问题吗?
有关我的项目的更多信息,请查看此
const MyScreen = ({ items }) => {
const [initialItems, setInitialItems] = useState(items)
useEffect(() => {
reload()
}, [])
const reload = () => {
console.log(initialItems) // same value
console.log(items) // same value
}
return (
<FlatList
...
refreshControl={
<RefreshControl
refreshing={isRefreshing}
onRefresh={() => reload()}
/>
}
...
/>
)
}
const mapStateToProps = (state) => {
return {
items: state.items, // I tried this also with [...state.items]
}
}
我的错误是这样复制我的数组:xArray = yArra
这意味着通过引用而不是通过值调用。