javascript - 如何在 react 选择中使用 onChange

标签 javascript reactjs react-hooks

我正在尝试在我的 react-select 中创建 onChange 函数。这是我的以下代码:

  const find = (event) => {
    event.preventDefault();
    if (event.target.value === "Users") {
      setSearchUsers(true);
      setSearchTeams(false);
    } else if (event.target.value === "Teams") {
      setSearchUsers(false);
      setSearchTeams(true);
    }
  };

  <Select
    className="search-select"
    instanceId="long-value-select"
    closeMenuOnSelect={false}
    components={animatedComponents}
    defaultValue="Select"
    isMulti
    onChange={(e) => find(e.target.value)}
    options={searchData}
  />
当我尝试更改选项时,它给了我这个错误

TypeError: event.preventDefault is not a function


在这种情况下如何使用 onChange 函数?

最佳答案

您正在通过 event.target.valuefind方法,然后使用该事件值来获取 event.target.value再次。您不需要再次执行此操作,因为您已经传递了该值。 prevenDefault()方法不存在于事件的值上,但存在于事件对象本身上。只需将事件对象作为参数传递即可使用 preventDefault() .

 onChange={(e) => find(e)}

关于javascript - 如何在 react 选择中使用 onChange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68790381/

相关文章:

javascript - 如何模拟在使用 Jest 测试的 React 组件中进行的 API 调用

javascript - 使用 React js 调用两个以上的 Web 服务并将它们填充到 Material ui 下拉列表中

javascript - 切换屏幕时 useEffect 不起作用

javascript - 使用逗号在 #react-select 上创建新标签

javascript - React,localStorage 在页面刷新时不持久

javascript - 更新后无法访问计数器

javascript - 在 Angular 中使用 NodeJS 数据

javascript - 从 HTA 应用程序打开程序

javascript - 如何使用YouTube API获取相关视频的数量?

javascript - CKEditor 4 如何在没有用户交互的情况下添加表格(即没有对话框)