【发布时间】:2021-05-15 16:16:26
【问题描述】:
我在表单上使用 Ant Design。
有复选框的用户。当我检查它们时,会显示用户详细信息输入并设置值。
在更新表单上,我想设置复选框 checked = true 并显示在创建表单上检查的用户的详细信息输入。
最好的方法是什么?
<Form.Item name="employeeIds">
<Checkbox.Group style={{ width: "100%" }}>
<Row>
{props.employees.map((employee) => (
<Col key={employee.id} span={6}>
<Checkbox defaultChecked={employee.id} onChange={(e) =>
selectEmployees(e, employee.name, employee.surname)} value={employee.id}>
{employee.name} {employee.surname}
</Checkbox>
</Col>
))}
</Row>
</Checkbox.Group>
</Form.Item>
{selectedEmployees?.map((i, b) => (
<Card>
<Row>
<Col span={5}>
<label> {i.employeeName}:</label>
</Col>
<Col >
<Form.Item
{...b}
name={[b, 'employeeId']}
>
<Input/>
</Form.Item>
</Col>
</Row>
</Card>
) )}
const selectEmployees = (e, employeeName, employeeSurname) => {
var fullName = employeeName + " " + employeeSurname
if (!selectedEmployees.some(person => person.id == e.target.value)) {
setSelectedEmployees(prev => [...prev, {
employeeName: fullName,
id: e.target.value
}]);
}
else {
setSelectedEmployees(selectedEmployees.filter(item => item.id !== e.target.value))
}
}
【问题讨论】:
标签: javascript reactjs frontend antd