[英]object parameters type definition in typescript
我正在传递一个组件一些道具。 其中之一是不返回任何内容的函数。 我必须传递两个对象作为由两个布尔值组成的参数。 如何指定这些参数是布尔值?
const MyComponent: React.FC<{
onChange: ({ isFoo1, isFoo2 }) => void;
}> = ({ onChange }) => {
const [isFoo1, setIsFoo1] = useState<boolean>(false);
const [isFoo2, setIsFoo2] = useState<boolean>(false);
/*
* stuff...
*/
useEffect({
onChange({isFoo1, isFoo2})// <----- Type error
},[isFoo1, isFoo2])
}
typerror 的代码为 2345,它出现是因为在onChange
定义中我没有指定两个参数的类型。我该怎么做?
不要在onChange
函数的类型中使用解构。 相反,只需使用普通对象参数并像输入对象一样键入它:
onChange: (obj: {isFoo1: boolean, isFoo2: boolean}) => void;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.