Javascript 反应:在子上下文中访问时,父状态设置为默认状态

Javascript 反应:在子上下文中访问时,父状态设置为默认状态,javascript,reactjs,Javascript,Reactjs,我的处境很特殊 对于我自己的爱好项目,我尝试在react上模仿datatables.net。我有三个主要组件:表、TR和TD。我将一个onClick事件从顶层代码向下传递到TD,然后用每个级别的数据备份它 你可以在屏幕上看到代码。然而,这是它的要点: consttd=(道具)=>{ const[data,updateData]=useState(props.children); 返回( onClick(e,data}>{data} ); } consttr=(道具)=>{ const[data

我的处境很特殊

对于我自己的爱好项目,我尝试在react上模仿datatables.net。我有三个主要组件:表、TR和TD。我将一个onClick事件从顶层代码向下传递到TD,然后用每个级别的数据备份它

你可以在屏幕上看到代码。然而,这是它的要点:

consttd=(道具)=>{
const[data,updateData]=useState(props.children);
返回(
onClick(e,data}>{data}
);
}
consttr=(道具)=>{
const[data,updateData]=useState(props.children);
返回(
{data.map((i)=>(
onClick(e,c,data}>{i}
) }
);
}
const表=(道具)=>{
const[data,updateData]=useState(props.children);
const renderHead=()=>{/*一些无聊的代码*/}
返回(
{renderHead()}
{data.map((i)=>(
onClick(e,c,r,data}>{i}
) }
);
}
现在,我在一个组件中使用这个表,并尝试调用onClick以获得如下行:

const CustomComponent=(道具){
const[someState,updateSomeState]=useState(“someInitialState”);
const onRowClick=useCallable((e,c,r,d)=>{
const captureState=someState;
console.log(captureState);
},[someState]);
返回(
);
}
无论我如何更改someState及其当前所保存的内容,当我单击列时,
someState
将被读取为
“someInitialState”

这里发生了什么事,出了什么事