【发布时间】:2020-11-26 17:05:17
【问题描述】:
似乎非常简单,但如果下拉列表选择了项目,然后我更改可用选项,并且还会发生新的选项,也恰好包含先前所选的项目,然后在选项更改时将自动选择该项目。
我想要的是让下拉菜单在选项更改时显示其占位符值。
useEffect(() => {
setSelectedReport(undefined);
}, [availableReports]);
<Dropdown
placeholder="Select Report"
fluid
selection
onChange={(e, data) => handleSelectedReportChange(data)}
options={availableReports}
value={selectedReport.value }
></Dropdown>
是否可能需要以某种方式强制组件完全重新渲染,从而忘记之前的选项?
【问题讨论】:
-
我在语义 ui 反应下拉菜单中遇到了类似的问题。您可以在 Dropdown 道具中定义一个 onClick 函数。您可以检查先前选择的项目是否包含在选项集中,如果是这种情况,您可以使用状态动态设置占位符。似乎有很多工作要做,但想不出任何办法来解决这种错误的行为
-
@SinanYaman 谢谢,但我不想/不需要在状态中设置占位符值,因为我很高兴它是静态文本。我需要的是让下拉列表识别出没有选择任何报告。
标签: reactjs dropdown semantic-ui-react