React&Ts 组件传入可选函数,undefined问题处理

TA_WORLD 2022-06-23 15:23:48 阅读数:204

react组件ts传入react&ts

React&Ts 组件传入可选函数,undefined问题处理

组件props类型定义

interface PinProps extends React.ComponentProps<typeof Rate> {

checked:boolean,
onCheckedChange?:(checked: boolean) => void
}

onCheckedChange类型是一个函数,并且是可选类型


当触发事件的时候就会调用onChange的回调函数,在回调函数中又调用了onCheckedChange函数
但是因为onCheckedChange是可选类型,所以不能直接调用,否则会出现error——不能调用可能是“未定义”的对象
我们可以使用?.来处理问题,当组件中为传入onCheckedChange时就不调用

<Rate
count={1}
value={checked ? 1 : 0}
onChange={num => onCheckedChange?.(!!num)}
{...restProps}
/>
版权声明:本文为[TA_WORLD]所创,转载请带上原文链接,感谢。 https://blog.csdn.net/qq_56303170/article/details/125418315