我是React Hooks的新手,并且可以玩转它。
只是想知道在componentDidMount之后是否有任何解决方案可以使用useEffect多次获取数据。
通常,我们使用useEffect根据传递的某些道具更改来获取数据。
useEffect(()=> {
fetchApisomefunction()=>{}
},
[]); // normally do this for componentDidMount
此后如何再次获取数据?
更新
回调函数可以解决这个问题。
答案 0 :(得分:1)
假设您没有使用Redux
或Context API
,
因此组件A和B不能直接相互通信。
另一方面,将有一个父组件将这两个组件连接起来。
正如您所说,组件B将发布数据,这将更改父级的state
。
由于每当其父组件的state
或props
发生变化时,都会重新渲染react子组件,因此组件A也将被重新渲染。
因此,您要做的就是不使用第二个参数useEffect
的情况下使用[]
。
实际上,这不是使用Hooks
的问题,而是反应组件结构的问题。
请记住,两个子组件不应直接相互通信。