【发布时间】:2018-10-10 17:46:44
【问题描述】:
我正在使用react-select 显示可搜索的项目下拉列表,用户可以从中选择多个项目。我的列表很长,用户经常希望多选许多匹配相同过滤字符串的项目,这是一个有点乏味的过程,因为每次选择一个项目时,下拉菜单都会消失,您需要重新键入搜索。
例如,以下沙盒有一个react-select,其中列出了许多苹果和奶酪。为了选择所有苹果,必须不断输入“Apple”并一次选择一个苹果。
https://codesandbox.io/s/2l99lry5p
来自桌面 UI 背景,我自然希望能够键入搜索查询并按 Ctrl-A 选择所有匹配的搜索结果并将它们添加到我的列表中,或者 Ctrl-Click 从中挑选多个项目匹配集。但据我所知,react-select 中不支持任何这样的热键。
react-select API 是否有任何方法可以实现“全选”热键,该热键将选择与当前搜索过滤器匹配的所有内容(甚至页面上的显式“全选”按钮也可以) ?我看不到任何编程方式来访问与过滤器匹配的对象集。这是我需要 fork react-select 来实现的,还是可以通过现有的 API 以某种方式做到这一点?
【问题讨论】:
-
react-select 库,似乎是does not provide special API to select all currently displayed items。我认为,为了解决这个问题,你要么分叉并调整组件本身,要么构建自己的高阶组件来添加此功能。
标签: javascript reactjs react-select