我这边封装一个高阶组件,如何正确的使用ts呢?
不用any!!
举例:
1、我现在传递的是navigate、params、name、location,但是我的组件props仅有navigate、name,多出来name和location,ts也没有如何报错
2、这个高阶组件的返回值类型是什么呢?
import { ElementType, ReactNode } from "react";
import { useLocation, useNavigate, useParams } from "react-router-dom";
interface Iprop {
name: string,
history?: Function,
navigate: Function,
}
function withRouter(Component: any): ElementType {
return (props: Iprop) => (
<Component
{...props}
name="高阶组件的name"
params={useParams()}
location={useLocation()}
navigate={useNavigate()}
/>
);
}
export default withRouter;