Reactjs 从父组件中找出子组件已安装在react中

Reactjs 从父组件中找出子组件已安装在react中,reactjs,components,Reactjs,Components,我有一个react组件,它有一个子组件。我必须在父组件中知道子组件已装入。如何做到这一点?这取决于您使用的React版本 如果您使用的是React版本16.8或更高版本,则可以在子组件中使用useEffect挂钩,该挂钩可以触发父组件中的函数 const Parent = props => { const OnChildMount = () => { console.log('Child Mounted); } return ( <Child onMount={O

我有一个react组件,它有一个子组件。我必须在父组件中知道子组件已装入。如何做到这一点?

这取决于您使用的React版本

如果您使用的是React版本16.8或更高版本,则可以在子组件中使用useEffect挂钩,该挂钩可以触发父组件中的函数

const Parent = props => {
 const OnChildMount = () => {
  console.log('Child Mounted);
 }
 return (
  <Child onMount={OnChildMount}/>
 )
}

const Child = props => {
 useEffect(() => {
  props.onMount();
 }, []);

 return (
  //The child JSX
 );
}
const Parent=props=>{
const OnChildMount=()=>{
console.log('子安装);
}
返回(
)
}
const Child=props=>{
useffect(()=>{
props.onMount();
}, []);
返回(
//儿童JSX
);
}
useEffect挂钩中的空括号[]确保它仅在安装子组件时运行

如果您使用的是旧版本的React,则可以在子组件中使用ComponentDidMount生命周期挂钩来触发父组件中的相同函数


也就是说,最终的解决方案实际上取决于您的确切需求。

componentDidMount
只有在所有子组件都已装入的情况下,才会调用父组件中的组件。这回答了你的问题吗?