【发布时间】:2020-06-01 20:01:03
【问题描述】:
我正在使用React 钩子动态呈现大量卡片,每个组件都有其下拉列表。如果我选择一个更新组件状态的选项,则每个下拉菜单都会更新为相同的值。我已经尝试实现选择React 的选项,并单独React-dropdown,但我的方法都不起作用。我认识到问题在于,当任何下拉列表更新时,它们都引用状态中的相同值,如果我注释掉状态更新,下拉列表将起作用。
我只是没有捕获状态更新。我不确定在用户在下拉列表之间进行选择然后显示呈现的选择时捕获这些选择的最佳方法是什么。
我见过的很多方法都没有解决在一个页面上动态创建多个下拉菜单的问题,所以如果对如何解决这个问题有任何想法,那将是有帮助的。以下是部分代码:
<select onChange(event=> selectedDropdownItem(selection)
value={event.target.value}
>
dropdownList.map(name =>
<option key={name.id} value={name.id} label={name.name} />
</select>
const [header, setHeader] = useState({ name: “select name”, id: null })
selectedDropdownItem = selection => {
setHeader({
name: selection.name,
id: selection.id
})
}
【问题讨论】:
-
至少,您需要有单独的变量来跟踪每个下拉菜单。
-
您好 Yevgen,感谢您的回复。你能举例说明你的意思吗?
标签: javascript reactjs dynamic react-hooks dropdown