Redux表单 - 具有默认值的复选框并将其设置为禁用

时间:2016-12-30 17:25:54

标签: reactjs checkbox redux redux-form

我想确认这种结构是否正确。

我需要为复选框设置默认值,因此我使用了checked = {input.value}。我还需要将其设置为禁用,然后我通过了禁用的道具:

// Using the Checkbox component  
<Field
  name="completed"
  label="Completed"
  disabled={this.props.disableCompleted}
  component={Checkbox}
/>

function Checkbox({ input, label, disabled }) {
  return (
    <div className="form-group">
      <label className="mt-checkbox">
        <input 
          type="checkbox" 
          disabled={disabled} 
          checked={input.value} 
          {...input} /> {label}
        <span></span>
      </label>
    </div>
  );
}

有没有更好的方法呢?

1 个答案:

答案 0 :(得分:0)

启用/禁用复选框的实现是正确的。

要显示复选框的默认选中值,您需要使用defaultChecked。在您的示例中,您没有将input值传递给Checkbox(我只看到disabledlabel)。确保你是,并且它是一个布尔值。然后你应该好好去。