【发布时间】:2020-03-10 17:48:02
【问题描述】:
根据下面的示例,我从一些外部数据构建了一组单选按钮。除了aria-checked 属性外,它们按我的预期呈现和工作。单击一个单选按钮会切换选中的值,但当另一个被选中时,它仍然是true。
如果我按顺序单击每个单选按钮,我最终会得到一个显示aria-checked="true" 的单选按钮列表,这显然不是最佳体验。
我不确定如何在选中另一个单选按钮时将选中的值切换回 false。
任何帮助都会很棒!
输入:
const [isChecked, setIsChecked] = useState(false);
<Input
type={type}
id={id}
value={id}
name={name}
aria-label={label}
aria-checked={isChecked}
onChange={() => setIsChecked(!isChecked)}
/>
<Label htmlFor={id}>{label}</Label>
用法:
<fieldset>
{someData.map(item => {
return (
<RadioButton
type="radio"
key={item.id}
id={item.id}
name={item.name}
label={item.label}
/>
);
})}
</fieldset>
【问题讨论】:
标签: javascript reactjs react-hooks