gpt4 book ai didi

javascript - 如何将 React Hook 传递给子组件

转载 作者:行者123 更新时间:2023-11-28 14:12:56 24 4
gpt4 key购买 nike

我想将 React Hook 的 setter 传递给子组件。这样子组件中的按钮就可以通过保存在父组件中的 setter 来更新状态。我尝试了以下设置,但收到错误消息:

TypeError: setshowOptionPC is not a function onClick

我的方法可行吗?如果不是,我怎么可能使用 React Hook 来完成该结构。

下面是我的代码的简化版本:

import React, { useState } from "react";

function ChildComponent({ setshowChildOptionBC, setshowChildOptionPC }) (
<div>
<button
onClick={() => {
setshowChildOptionPC(false);
setshowChildOptionBC(true);
}}
>
BC
</button>
<button
onClick={() => {
setshowChildOptionPC(true);
setshowChildOptionBC(false);
}}
>
PC
</button>
</div>
);


function ParentComponent() {
const [showOptionBC, setshowOptionBC] = useState(true);
const [showOptionPC, setshowOptionPC] = useState(false);

return (
<div>
<ChildComponent
setshowChildOptionBC={setshowOptionBC}
setshowChildOptionPC={setshowOptionPC}
/>
{showOptionBC && <div>BC</div>}
{showOptionPC && <div>PC</div>}
</div>
);
}

export default ParentComponent;

最佳答案

我认为您只是忘记解构子组件中的 Prop 。这可能会有所帮助。

function ChildComponent({setshowOptionBC, setshowOptionPC}) {..

关于javascript - 如何将 React Hook 传递给子组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58860513/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com