【发布时间】:2020-04-19 20:32:49
【问题描述】:
我有动态下拉菜单,我使用 useRef 来跟踪已选择的内容,以便下一个下拉菜单不会显示已选择的项目。但是,当我删除一个项目时,以前的下拉菜单会再次显示所有选项。
但是,当我删除一个项目时,其他下拉菜单不会跟踪仍然选中的所有内容。
例如这里,如果你创建 3 个项目,选择 1 到 3,然后删除最后一个。如果您返回第一个下拉菜单,您会看到选项 2 在左侧,即使它已经被选中。 https://codesandbox.io/s/actions-selector-t7nbk?file=/ObjectList.jsx
const gSettings = useRef(globalSettings);
const [object, setObject] = useState('user');
const objectOptions = (
objects.filter(i => !gSettings.current.map(i => i.object).includes(i)) || []
).map(i => ({ value: i, label: i }));
【问题讨论】:
标签: javascript reactjs ecmascript-6