【发布时间】:2020-07-14 14:23:06
【问题描述】:
我知道我们也可以触发useEffect 钩子:
- 每次组件呈现时。
- 组件安装和/或卸载时。
- 当定义的依赖项之一发生更改时。
但是有没有可能在子组件渲染的时候触发呢?
【问题讨论】:
标签: reactjs react-hooks use-effect
我知道我们也可以触发useEffect 钩子:
但是有没有可能在子组件渲染的时候触发呢?
【问题讨论】:
标签: reactjs react-hooks use-effect
你可以将一个函数作为 prop 传递给子组件,并在子组件内部使用 useEffect,这样每次它再次渲染时你就可以运行 prop 函数
【讨论】:
您可以做的一种方法是将回调传递给子组件,每个子组件渲染都会调用该回调。现在,此回调将使用您的钩子更新父组件的道具之一。您的钩子可以将此道具指定为其依赖项,这意味着每次更改时,都会触发您的钩子。这将确保您的钩子仅在父组件中,但问题是钩子会触发父组件重新渲染并且您陷入循环。据我所知,您不需要钩子,而是需要关注子组件的每个渲染并执行某些操作的东西。在这种情况下,一个简单的回调就足够了
【讨论】: