select 事件和默认值的 Typescript 转换错误
Typescript conversion error for select event and default value
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);
}
...
然后在里面 return
<Select defaultValue={month} style={{ width: 120 }} onChange={handleChange}>
您使用的 Select
组件很可能会将值传递给 onChange handler
而不是事件,因此您会收到该警告
你应该像这样定义它
const App = () => {
const [ month, setMonth] = useState("last1")
const handleChange = (value: string) => {
setMonth(value);
}
...
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);
}
...
然后在里面 return
<Select defaultValue={month} style={{ width: 120 }} onChange={handleChange}>
您使用的 Select
组件很可能会将值传递给 onChange handler
而不是事件,因此您会收到该警告
你应该像这样定义它
const App = () => {
const [ month, setMonth] = useState("last1")
const handleChange = (value: string) => {
setMonth(value);
}
...