设置 defaultChecked 单选按钮在反应中不起作用

setting defaultChecked in radio button is not working in react

我需要在页面加载时设置 defaultChecked,用户稍后可以更改它

<input
  ref={(element) => (this['input' + item.key] = element)}
  name={item.key}
  placeholder='Config value'
  defaultChecked={item.value === true}
  value='true'
  type='radio'
  onChange={(event) => this.validateCValue(event.target.value, item)}
/>
<label> True</label>

单选输入只能勾选不能取消勾选,如果设置为true,用户将无法取消勾选,也许你是想用checkbox?

const [checked, setChecked] = useState(true);
  const handleChange = () => {
    setChecked(checked => !checked);
  };

  return (
    <div className="App">
      <input
        placeholder="Config value"
        defaultChecked={checked}
        type="checkbox"
        onChange={handleChange}
      />
      <label>{checked ? "checked" : "not checked"}</label>
    </div>
  );

这对我有用,使用“选中”tp 设置单选按钮默认值

<div onChange={this.sethandleValueChange.bind(this)} className={` ${(this.state.IsControlSet && this.state.RadioBtnVal=="" ? styles.control_border_red : "")}`}>
<input type="radio" value="Yes" name="RadioBtnVal" checked={this.state.RadioBtnVal=="Yes"} disabled={(this.state.FormName!="View") ? false : true}/> Yes<br/>
<input type="radio" value="No" name="RadioBtnVal" checked={this.state.RadioBtnVal==="No"} disabled={(this.state.FormName!="View") ? false : true}/> No
</div>