我们在使用 function base component 的时候可以使用 useParams
来获取参数, 类似这样:
const { id } = useParams()
当我们使用 class base component 的时候该如何写好类型呢?
先说结论
import { RouteComponentProps } from 'react-router';
// example route
<Route path="/products/:name" component={ProductContainer} />
interface MatchParams {
name: string;
}
interface Props extends RouteComponentProps<MatchParams> {
}
查看源代码
// from typings
export interface RouteComponentProps<P> {
match: match<P>;
location: H.Location;
history: H.History;
staticContext?: any;
}
export interface match<P> {
params: P;
isExact: boolean;
path: string;
url: string;
}