【发布时间】:2021-09-30 01:16:51
【问题描述】:
我使用 React 创建了一个 Select,它允许用户选择多个选项。 问题是 Select 显示所选项目的 ID,而不是它们的名称。 如何更改代码以使 Select 显示以逗号分隔的名称(现在显示以逗号分隔的 ID),同时保留 id 数组以供以后处理。
知道如何解决吗?这是CodeSanbox的代码
我在 Material UI Select 中有以下数组:
const names = [
{ id: "1", value: "Oliver Hansen" },
{ id: "2", value: "Van Henry" },
{ id: "3", value: "Omar Alexander" }
];
这是呈现多选的代码:
<Select
labelId="demo-mutiple-checkbox-label"
id="demo-mutiple-checkbox"
multiple
value={personName}
name="first"
onChange={handleChange}
input={<OutlinedInput label="Tag" />}
renderValue={(selected) => selected.join(", ")}
>
{names.map((name) => (
<MenuItem key={name.id} value={name.id}>
<Checkbox checked={personName.indexOf(name.id) > -1} />
<ListItemText primary={name.value} />
</MenuItem>
))}
</Select>
【问题讨论】:
-
您想显示名称,但还要将所选名称的 ID 保留在状态中?
标签: reactjs material-ui