2 回答
TA贡献1155条经验 获得超0个赞
你可以这样做
<input
className={`radio-${props.size} radio-${props.color}`}
type='radio'
/>
TA贡献1775条经验 获得超8个赞
radioHTML 中没有元素。有<input type="radio">。此外,input元素不能有孩子,所以你可能想要一个label围绕这个。
所以它会是这样的:
return (
<label>
{props.children}
<input type="radio" className={radioClass} />
</label>
);
旁注:你可以radioClass更简单地做这件事:
const {size, color} = this.props;
let radioClass = '';
if (size === 'small' || size === 'large') {
radioClass += `radio-${size}`;
}
if (color === 'secondary' || color === 'warning' || color === 'light' || color === 'dark') {
radioClass += ' radio-${color}`;
}
或者,如果您知道props.size并且props.color将始终具有有效值,只需:
const radioClass = `radio-${size} radio-${color}`;
...但您的代码似乎在防御size和color缺席或无效。(我认为至少color是可选的。)
添加回答
举报