我有一个带有图标的对象,该图标可用于某些按钮。
const icons = {
check: 'icon-CheckSmall',
chat: 'icon-ChatMedium',
investors: 'icon-InvestorsMedium',
download: 'icon-DownloadMedium',
};
const Button = (props) => {
const {
buttonType,
buttonText,
onClick,
disabled,
} = props;
return (
<button
style={ icons }
type={ buttonType }
onClick={ onClick }
disabled={ disabled && 'disabled' }
>
{ <FormattedMessage id={ buttonText } /> }
</button>
);
};
我想为具有键数组的组件创建道具类型
Button.propTypes = {
icon: PropTypes.oneOf(Object.keys(icons)),
};
在这种情况下,Object.keys
不起作用。
有没有人设法在组件中实现动态道具类型?