reactjs - 在自动完成之外单击时,Material-UI 自动完成输入重置
问题描述
我正在使用 Material-UI 中的基本自动完成功能,选项加载良好并且能够成功过滤。
但是,一旦我们过滤了选项,只需单击外部,过滤器就会被清除,下拉菜单会被排序/重置。
这基本上导致了移动设备上的可访问性问题。当我们将android语音翻转并过滤结果时,当用户尝试选择选项时,它总是选择不是过滤结果的选项。看起来,过滤器休息了,下拉菜单洗牌了。我观察到由于过滤器被重置,当它失焦时导致这里出现问题。它适用于自动选择。但在我的用例中,我不想自动选择。
export default function App() {
const [state, setState] = useState();
return (
<Autocomplete
options={["a", "b", "c"]}
renderInput={(params) => (
<TextField {...params} onChange={(e, v) => setState(v)} />
)}
value={state}
/>
);
}
解决方案
您可以使用freeSolo
prop允许在 : 中的任意输入值Autocomplete
:
<Autocomplete freeSolo
推荐阅读
- python - 将具有私有变量的类实例转换为 JSON 格式
- confidence-interval - 具有因子-因子交互作用的障碍模型中的赔率和比率 CI
- asp.net-core - 获取 .NET Core JSON Body 作为动态对象
- rest - TensorFlow 服务认证
- flutter - Flutter setState public var 到另一个页面?
- django - 如何使用原生 Django 的测试框架而不是 pytest 来测试 Django Channels?
- laravel - 如何在 aws Elastic beanstalk 中更新 laravel 项目,同时保持相同的存储
- spring-boot - 如何在 Spring Boot 中将 JSP 中的项目列表发送回控制器?
- xml - 如何解析 XML 文件中的某些标签并使用 Bash 将它们存储在数组中?
- swift - 是否可以从 Swift 调用 Nikon SDK?