【发布时间】:2020-08-21 12:32:18
【问题描述】:
我曾想过包装react-router Path 组件。我正在尝试在渲染中使用 component 道具,但出现错误:
JSX 元素类型“组件”没有任何构造或调用 签名.ts(2604)
代码如下:
export interface Props {
component: RouteProps['component'];
path: RouteProps['path'];
canShow: boolean;
}
const ProtectedRoute: React.FunctionComponent<Props> = ({
component: Component,
canShow,
...rest
}) => {
return (
<Route
{...rest}
render={
props => canShow
? (<Component {...props} />)
: null
}
/>
);
};
export default connect(mapStateToProps)(ProtectedRoute);
如何根据我拥有的类型渲染它?
【问题讨论】:
标签: reactjs typescript react-router