React-Select:将选定的项目保留在菜单中
React-Select: keep selected items in menu
使用React-Select in v1.0.0-beta10, I'd like to keep selected items in menu in order to be able to implement a dropdown behaving similar as the multi-select at MaterializeCss
截图如下:
如何实现这种行为?
您可以访问一个名为 filterOptions 的道具,它接受一个函数,该函数采用属性选项、searchFilter 和 selectedOptions。
您应该能够始终 return 与搜索过滤器匹配的选项,而不是像下面那样剥离 selectedOptions(如果您使用的是 underscrore/lodash。或者编写您自己的方法。
const filterOptions = (options, searchFilter, selectedOptions) => {
return _.filter(options, options => _.includes(option.value, searchFilter));
}
然后
<Select {...props} filterOptions={filterOptions} />
希望这个例子对您有所帮助。
只是为了让这个完整as you asked in react-select on GitHub this was made possible using removeSelected={false}
in this pull request。现在(2019 年中)解决方案是:
hideSelectedOptions={false}
使用React-Select in v1.0.0-beta10, I'd like to keep selected items in menu in order to be able to implement a dropdown behaving similar as the multi-select at MaterializeCss
截图如下:
如何实现这种行为?
您可以访问一个名为 filterOptions 的道具,它接受一个函数,该函数采用属性选项、searchFilter 和 selectedOptions。
您应该能够始终 return 与搜索过滤器匹配的选项,而不是像下面那样剥离 selectedOptions(如果您使用的是 underscrore/lodash。或者编写您自己的方法。
const filterOptions = (options, searchFilter, selectedOptions) => {
return _.filter(options, options => _.includes(option.value, searchFilter));
}
然后
<Select {...props} filterOptions={filterOptions} />
希望这个例子对您有所帮助。
只是为了让这个完整as you asked in react-select on GitHub this was made possible using removeSelected={false}
in this pull request。现在(2019 年中)解决方案是:
hideSelectedOptions={false}