Javascript 将默认值设置为react boostrap表单。检查

Javascript 将默认值设置为react boostrap表单。检查,javascript,reactjs,react-bootstrap,Javascript,Reactjs,React Bootstrap,我有以下复选框代码: <Form.Group controlId="formBasicCheckbox"> <Form.Check onChange={(disabled)=> {disabled ? packed = 'yes' : packed = 'no'}} > </Form.Check> </Form.Group> {已禁用?打包='yes':打包='n

我有以下复选框代码:

<Form.Group  controlId="formBasicCheckbox">
       <Form.Check
             onChange={(disabled)=> {disabled ? packed = 'yes' : packed = 'no'}} >
       </Form.Check>
</Form.Group>

{已禁用?打包='yes':打包='no'}>

此外,我需要设置默认值,但找不到一种方法来做到这一点。我尝试了'value'、'defaultValue',但没有任何帮助,谷歌也没有。

defaultValue
确实有效,但请注意,这主要是针对不受控制的组件。既然你有一个
onChange
我想你想要的是
(除非
onChange
是为了另一个目的-不管我下面有什么代码可以帮助)

如果有帮助,您还可以使用
defaultChecked
prop,它接受一个布尔值,该布尔值将设置复选框最初是否应被选中(您也可以使用
checked
prop-但此时您需要通过例如state来控制其值)

此外,我认为您误解了
onChange
prop。它的回调参数是一个合成事件-我发现
disabled
是一个奇怪的标识符,并且容易混淆。有关详细信息,请参见下面的代码

const [packed, setPacked] = React.useState("yes");

<Form.Check
  defaultChecked={true} // if checkbox should be checked by default
  // defaultValue="yes" // use this instead of value if you want uncontrolled component
  value={packed} // state-controlled value of checkbox
  onChange={(e) => {
    // e.target.checked will return true or false if checkbox is checked
    e.target.checked ? setPacked("yes") : setPacked("no");
  }}
></Form.Check>
const[packed,setPacked]=React.useState(“是”);
{
//如果选中复选框,e.target.checked将返回true或false
e、 target.checked?设置打包(“是”):设置打包(“否”);
}}
>

您是否尝试过检查
?@rfestag也不起作用