我试图将一个useStatesetter传递给一个子组件,但不确定如何键入它。

const Parent = () => {
   const [count, setCount] = useState(0);
   return(
     Child count={count} setCount={setCount} />
   );
}

然后在Child组件中,我试图键入setter,但看到以下错误。
类型“dispatch>不可分配给类型“()=>void”。
我的代码是这样的
type Props = {
  count: number;
  // the issue is the line below
  setCount: () => void;
}

const Child = ({ count, setCount }: Props) => {
    .... code here
}

最佳答案

您可以指定setCountprop函数需要一个数字作为第一个参数,错误将消失。

type Props = {
  count: number;
  setCount: (num: number) => void;
}

10-06 04:05