Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应选择:将所选项目保留在菜单中_Javascript_Reactjs_React Select - Fatal编程技术网

Javascript 反应选择:将所选项目保留在菜单中

Javascript 反应选择:将所选项目保留在菜单中,javascript,reactjs,react-select,Javascript,Reactjs,React Select,使用v1.0.0-beta10,我希望将选中的项目保留在菜单中,以便能够实现类似于multi-select at的下拉行为 以下是一个屏幕截图: 如何实现此行为?您可以访问名为filterOptions的道具,该道具接受一个函数,该函数采用properties选项、searchFilter和selectedOptions 您应该能够始终返回与搜索筛选器匹配的选项,而不是像下面这样剥离所选选项(如果您使用的是underscrore/lodash。或编写您自己的方法) const filterOp

使用v1.0.0-beta10,我希望将选中的项目保留在菜单中,以便能够实现类似于multi-select at的下拉行为

以下是一个屏幕截图:


如何实现此行为?

您可以访问名为filterOptions的道具,该道具接受一个函数,该函数采用properties选项、searchFilter和selectedOptions

您应该能够始终返回与搜索筛选器匹配的选项,而不是像下面这样剥离所选选项(如果您使用的是underscrore/lodash。或编写您自己的方法)

const filterOptions = (options, searchFilter, selectedOptions) => {
  return _.filter(options, options => _.includes(option.value, searchFilter));
}
然后

<Select {...props} filterOptions={filterOptions} />


希望本例能有所帮助。

您可以访问名为filterOptions的道具,该道具接受一个函数,该函数包含properties选项、searchFilter和selectedOptions

您应该能够始终返回与搜索筛选器匹配的选项,而不是像下面这样剥离所选选项(如果您使用的是underscrore/lodash。或编写您自己的方法)

const filterOptions = (options, searchFilter, selectedOptions) => {
  return _.filter(options, options => _.includes(option.value, searchFilter));
}
然后

<Select {...props} filterOptions={filterOptions} />


希望此示例能有所帮助。

为了完成此操作,可以在中使用
removeSelected={false}
实现此操作。现在(2019年年中)解决方案是:

hideSelectedOptions={false}

为了完成这项工作,可以在中使用
removeSelected={false}
实现。现在(2019年年中)解决方案是:

hideSelectedOptions={false}

问题在于,两次单击同一选项不会取消选择,而是会复制选择。问题在于,两次单击同一选项不会取消选择,而是会复制选择。