首页 > 解决方案 > 您在没有 `onChange` 处理程序的情况下为表单字段提供了 `checked` 属性。这将呈现一个只读字段

问题描述

我的 React 应用程序有两个单选按钮,单击它们我正在更改输入字段的标签和长度。我收到此错误:

失败的道具类型:您在checked没有处理程序的情况下为表单字段提供了道具onChange。这将呈现一个只读字段。如果该字段应该是可变的,请使用defaultChecked. 否则,设置onChangereadOnly

<Row className="pb-3">
     <Col xs="1"> <BrInput type="radio" id="faNum" value="faNum" onChange={this.handleRadioSelect} checked={faRrLabel === 'faNum' ? true : false} /> </Col>
     <Col xs="2"> <BrLabel styleClass="ml-sm-0" element='FA No.' textSize={textSize} textBold={true} /></Col>
     <Col xs="1"> <BrInput type="radio" id="rrNum" value="rrNum" onChange={this.handleRadioSelect} checked={faRrLabel === 'rrNum' ? true : false} /> </Col>
     <Col xs="2"> <BrLabel styleClass="ml-sm-0" element='RR Code' textSize={textSize} textBold={true} /></Col>
</Row>

这是我的handleRadioSelect功能。

handleRadioSelect = (value) => {
    this.setState({ faRrLabel: value })
}

标签: javascriptreactjsecmascript-6

解决方案


推荐阅读