我正在使用useEffect挂钩在组件加载时将操作调度到我的redux存储。这是代码:
const dispatch = useDispatch()
const hotelList = useSelector(state => state.hotels)
const [updatedList, setUpdatedList] = useState([...hotelList])
useEffect(() => {
dispatch(fetchHotels())
// setUpdatedList(hotelList) -- I've tried using this line here but still gets empty array
}, [])
它工作正常,因为当我尝试执行{console.log(hotelList}
时,我从redux存储中获取了对象数组。
但是,当我尝试执行setUpdatedList(hotelList)
甚至设置初始状态时,它不起作用,并且我得到了空数组。我该如何解决?
P.S只是为了澄清一下,我100%确信操作已正确分发到商店,因为我可以在console.log和redux开发工具中看到结果。