如何在React中调用功能组件中作为prop接收的函数?

how to call a function that is received as prop in functional component in react?

提问人:Abdul Ghaffar 提问时间:10/12/2023 最后编辑:Fabian S.Abdul Ghaffar 更新时间:10/13/2023 访问量:34

问:

我正在尝试将 SideBar 组件中收到的 toggleSideBar 称为道具。但它给出了一个错误,即 toggleSideBar 不是一个函数。实际上我正在尝试在另一个回调函数中调用 toggleSideBar

这是代码

const Sidebar = (props) => {
  const { isOpenSidebar, toggleSideBar} = props;
  console.log(isOpenSidebar);
  const closeSideBar = () => {
    toggleSideBar()
  }
};
reactjs react-props 反应功能组件

评论

0赞 Sharp Dev 10/12/2023
您能否将父级发布到此功能组件的示例,以及您如何将函数传递到其中?谢谢

答:

0赞 Kamran 10/12/2023 #1

看起来您没有在组件中正确传递函数,请确保它应该是这样的

<Sidebar toggleSideBar={yourActualFunction} />

0赞 Idrees Ahmed 10/12/2023 #2

似乎你正在像这样传递函数

<YourSidebar toggleSideBar={yourActualFunction()} />

不要在传递时调用该函数。做成这样

<YourSidebar toggleSideBar={yourActualFunction} />