javascript - 不要使用 React-Select 清除选择时的输入

标签 javascript reactjs react-select

这个问题没有很好的答案,所以我会回答:
问题是如果你想使用 React-Select 并且你想要在选择或模糊时不会被清除的持久输入值。该组件当前不支持此功能,因此需要解决方法。
我还就该主题提出的几个问题之一回答了这个问题
https://github.com/JedWatson/react-select/issues/588
https://github.com/JedWatson/react-select/issues/3210

最佳答案

您也可以使用 this 来增加它得到想要的效果

const App = () => {
  const [input, setInput] = useState("");
  const [inputSave, setSave] = useState("");
  
  return (
    <Select
      placeholder={inputSave} // when blurred & value == "" this shows
      value="" // always show placeholder
      inputValue={input} // allows you continue where you left off
      onInputChange={setInput} // allows for actually typing
      onMenuClose={() => setSave(input)} // before the input is cleared, save it
      onFocus={() => {
        setInput(inputSave);
        setSave(""); // prevents undesired placeholder value
      }} 
      blurInputOnSelect  // actually allows for ^^ to work
    />
  )
}
Edit sharp-pike-rnjbr

关于javascript - 不要使用 React-Select 清除选择时的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64298547/

相关文章:

javascript - 对于大型 json 结构,ReactJS 中的滞后输入

reactjs - React 无法将 undefined 或 null 转换为对象

reactjs - 在 React 中使用渲染后从 Redux 计算出的值设置 State 的正确方法

javascript - 当我失去焦点或移至下一个字段时, react 选择会清除我键入的值

javascript - 在 react 选择上保留占位符

javascript - 如果一个或多个 if 语句为 false Javascript,如何返回 false 并停止发送电子邮件?

javascript - CSS 将 div 旋转 90 度到左边距

javascript - 每当 UpdatePanel 刷新时运行 javascript

javascript - 谷歌翻译默认语言

javascript - 如何将提示输入的值传递给函数?