【发布时间】:2019-05-19 15:01:19
【问题描述】:
我当前使用的 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()
【问题讨论】:
-
setValue(e)正在调用一个有 1 个参数的函数,setValue()没有参数 => 2 个不同的函数调用将做 2 个不同的事情
标签: javascript reactjs datepicker react-hooks