除了Proptypes.func
之外,验证将成为无状态组件的proptypes的最佳方法是什么?
假设我有一个NestedDashboardItem
组件,它将作为道具接收Icon
组件。我不想将它作为一个孩子传递并从props.children
使用它,因为我有一些用例,如同传递子嵌套链接等数组一样过于苛刻。
考虑:
<DashboardItem
to="/route"
icon={someIconComponent}
text="sometext"
/>
并在DashboardItem
定义中我想验证此图标道具
const DashboardItem = ({ text, icon, to, classes }) => {
const Icon = icon;
return (
<ListItem
button
component={Link}
to={to}
activeClassName="active"
className={classes.root}
>
<ListItemIcon className={cx(classes.dashboardIcon_wrapper)}>
<Icon className={cx(classes.icon)} />
</ListItemIcon>
<ListItemText primary={text} />
</ListItem>
);
};
我使用PropTypes.element
并抱怨,所以现在我问的是验证icon
道具的最佳方式是什么,而不是PropTypes.func
?
答案 0 :(得分:0)
没有更好的方法。使用PropTypes.func
。