Office UI Fabric React - 下拉列表不遵循选定的键属性



我有这个代码:

<Dropdown
selectedKey={someKeyInState}
onChange={(e,option) => {
// check if the dropdown should be updated
if(someCondition){
// update selected key
}
else {
// don't update selected key
}
}}
options={someOptions}
/>

如果满足某个条件,我想阻止更新所选密钥。
但是,下拉列表直观地显示我单击为选定的选项。
如何防止此行为?

如果你正在使用 react,你不应该这样做。使用全局状态optionState并尝试使用条件检查应显示哪个状态以触发 Change 方法。为了做到这一点。首先将条件检查提取到单独的函数。

myFunction = () => {
// do conditional check and setState for optionState
}
--------------------------
onChange={myFunction}

然后,当您选择从选项状态中弹出键和值并更新到所选状态时,现在反应自动更新状态和UI

问题是我的状态selectedKeyundefined它没有被选中。当你传入undefined你基本上是在说结构来控制selectedKey状态。

我通过传递null而不是undefined来修复.这使得下拉列表完全受控。

最新更新