我从编辑表单中的选择选项中获取重复值。例如,在选择选项中,我有 A 和 B,假设我在数据库中记录为 B。所以当我进入编辑表单时,我应该看到 B 被选中,到目前为止工作正常。但我看到的是 A、B、B 而不是 A 和 B。
我不确定如何摆脱重复值。代码如下:
<div className="col-sm-10">
<select id="sourcename" className="form-control" name="source" onChange={handleChange}>
{sourceData.map(option => (
<option value={option._id}>{option.sourcename}</option>
))}
<option selected value={data.source._id}>{data.source.sourcename}</option>
</select>
</div>
非常感谢,非常感谢任何帮助。谢谢
答案 0 :(得分:1)
您可以简单地使用集合:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
const uniqueData = new Set(sourceData)
[...uniqueData].map(option => (
<option value={option._id}>{option.sourcename}</option>
))}
答案 1 :(得分:0)
这为我解决了问题
<option value={option.value} selected={optionsState == option.value}>{option.label}</option>