我有一个 handleClick 函数,我试图将其作为组件内的 onClick 事件的道具传递。这个事件只需要一个 setState 函数。我设置了一个界面,将其键入为“handleClick:React.Dispatch
相关代码如下:
interface IProps {
handleClick: React.Dispatch<React.SetStateAction<boolean>>;
icon?: JSX.Element;
}
const NavLinks: React.FC<IProps> = ({ handleClick }) => (
<div className="sidebar_navlinks">
{sidebar_links.map((link) => (
<NavLink key={link.name} to={link.to} onClick={() => handleClick && handleClick()}>
<div className="link">
<link.icon className="icon" />
{link.name}
</div>
</NavLink>
))}
</div>
)
然后用那个组件我就做类似的事情
<NavLinks handleClick={() => setMenuState(false)} />
我怎样才能最好地输入它,以便它停止在标题中给出错误?我不清楚为什么当我将它输入为设置状态的东西时它会期望有一个值?
我在网上看到的东西,通常是假设 onClick 将应用于 HTML 按钮元素,但我只是用它来点击反应图标,所以我更迷路了。