用ts定义了一个方法,根据条件,回调方法中参数顺序是a, b,也可能是b, a。
if (props.xxx) {
props.onChange(a, b)
} else {
props.onChange(b, a)
}
这个onChange方法在interface里该怎么描述呢
用ts定义了一个方法,根据条件,回调方法中参数顺序是a, b,也可能是b, a。
if (props.xxx) {
props.onChange(a, b)
} else {
props.onChange(b, a)
}
这个onChange方法在interface里该怎么描述呢
type IProps = {
xxx:boolern
OnChange:Function
} &({
xxx:true
OnChange(a:typeof a, b:typeof b):void
} | {
xxx:false
OnChange( b:typeof b, a:typeof a):void
})
function name({xxx,OnChange}:IProps){
let a,b:any;
if(xxx)
OnChange(a,b)
else
OnChange(b,a)
}
10 回答11.6k 阅读
2 回答3.1k 阅读✓ 已解决
3 回答2.7k 阅读✓ 已解决
4 回答2.1k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
不使用函数重载也可,改用联合类型: