选择事件和默认值的打字稿转换错误

时间:2019-01-02 10:38:44

标签: reactjs typescript antd react-hooks

对于以下代码,TSlint对defaulValue-Type 'string' is not assignable to type 'ChangeEvent<HTMLInputElement> | undefined-抛出错误

const App = () => {
  const [ month, setMonth] = useState("last1")
  const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
      console.log(e);
      setMonth(e.target.value);
  }
  ...

然后在内部返回

  <Select defaultValue={month} style={{ width: 120 }} onChange={handleChange}>

1 个答案:

答案 0 :(得分:1)

您使用的Select组件很可能会将值传递给onChange handler而不是事件,因此您会收到警告

您应该像这样定义它

const App = () => {
  const [ month, setMonth] = useState("last1")
  const handleChange = (value: string) => {
      setMonth(value);
  }
  ...