DatePicker 在 React 自定义 Hook 中不起作用

凯夫维夫

我当前使用React DatePicker有一个 onChange 属性,可以让您跟踪所选日期

<DatePicker
  selected={startDate}
  startDate={startDate}
  endDate={endDate}
  onChange={e => setValue(e)}
/>

当我以直接的方式使用 useState() 钩子时,它工作得非常好:

const [value, setValue] = useState()

但是,我需要在自定义 Hook 中使用它来组合各种变量。onChange()属性无法在该设置中工作。没有错误,只是没有交互。

例如,我将自定义 Hook 定义如下,并onChange()像以前一样属性调用,没有任何反应:

const useCustomHook = () => {
  const [value, setValue] = useState()
  return [value, () => setValue()]
}
const [value, setValue] = useCustomHook()
d4vsanchez

这可能是因为 setter 没有接收任何参数,因此没有更新状态的值。

尝试以这种方式返回钩子:

const useCustomHook = () => {
  const [value, setValue] = useState()
  return [value, (val) => setValue(val)]
}

或者干脆setValue直接传递

const useCustomHook = () => {
  const [value, setValue] = useState()
  return [value, setValue]
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 React 函数中调用自定义 Hook

如何在React Hook中添加自定义className?

在既不是 React 函数组件也不是自定义 React Hook 函数的函数中调用 React Hook “useAxios”

React Hook 在既不是 React 函数组件也不是自定义 React Hook 函数的函数中调用

自定义React代码段在javascriptreact.json文件中的vscode中不起作用

React hook 缺少自定义 hook setter 的依赖项

React原生自定义字体在android中不起作用

我的自定义组件在 React App.js 中不起作用

React Hook 表单 - onSubmit 不起作用

React Hook "useState" 不能在类组件中调用。React Hooks 必须在 React 函数组件或自定义 React Hook 函数中调用

如何测试使用自定义TypeScript React Hook的组件?

React Hook Form 和 watch() 的自定义 onChange

TypeScript和自定义React Hook Api服务

如何创建一个自定义的react hook?

React 自定义 useRequest Hook 导致 MemoryLeak

如何向 React Datepicker (HackerOne) 添加自定义样式?

在函数“ shoes”中调用React Hook“ useEffect”,该函数既不是React函数组件也不是自定义React Hook

在函数“ onSubmit”中调用React Hook,该函数既不是React函数组件也不是自定义的React Hook函数

在函数“ appBar”中调用React Hook“ useStyles”,该函数既不是React函数组件也不是自定义的React Hook函数

React + Typescript:复制自定义组件的道具-React.PropsWithoutRef对我不起作用

React 中自定义字段的自定义验证

当某些路由位于自定义组件内时,react 重定向不起作用

为什么自定义CSS类在React-Semantic-UI元素上不起作用?

React Native Chrome自定义选项卡不起作用

React bootstrap 自定义导航链接活动样式不起作用

如何在React Hook中使用自定义的Hook发送请求

UseEffect 中的组件更新自定义 Hook

在函数“ deviceStatus”中调用React Hook“ useState”,该函数既不是React函数组件也不是自定义React

在函数“ app”中调用React Hook“ useState”,该函数既不是React函数组件也不是自定义React