我正在使用 PrimeReact,并且我有一个人员数据表:
选择任何行时,会显示一个子面板,其中包含下拉菜单、复选框和文本输入:
文字输入代码:
<div className="p-col-4">
<InputText id="first-name"
value={this.state.selectedEntity.firstName}
onChange={(e) => this.setState(state => (state.selectedEntity.firstName = e.target.value))} />
</div>
我将名字的状态保存在一个名为selectedEntity
. 这就是通话中唯一的非直截了当的构造setState
。但是,一旦我键入,这就会在浏览器中出现错误:
问题:
怎么了?
这是 PrimeReact 中的错误吗?
我正在使用 PrimeReact 5.0.0-rc2。
编辑1:
顺便说一句,您在那里看到的下拉菜单和复选框,它们似乎与箭头功能一起使用。类似代码:
落下:
<div className="p-col-4">
<Dropdown optionLabel="name"
optionValue="gender"
value={this.state.selectedEntity.gender}
options={[{"gender": "MALE", "name": "Mr"}, {"gender": "FEMALE", "name": "Mrs"}]}
onChange={(e) => this.setState(state => (state.selectedEntity.gender = e.value))}
placeholder="Select a gender" />
</div>
复选框:
<div className="p-col-4">
<Checkbox inputId="incognito"
value="Incognito"
checked={this.state.selectedEntity.incognito}
onChange={(e) => this.setState(state => (state.selectedEntity.incognito = e.checked))} />
</div>
编辑2:
我在这里创建了一个测试用例:
https://codesandbox.io/s/primereact-test-forked-4blln?file=/src/index.js
对我来说似乎是一个错误......