reactjs - TypeScript, 'onChange' 被指定了不止一次,所以这个用法将是
问题描述
我在 react 项目中使用 material-ui、react-hook-form 和 Typescript,当我尝试在 TextField VScode 中添加 onChange 时,显示错误:
'onChange' 被指定了不止一次,所以这个用法会被覆盖。ts(2783) formComponent.tsx(33, 15):这个spread 总是覆盖这个属性。
formComponent.tsx:
<TextField
variant="standard"
defaultValue={projectData.name}
onChange={handleSubmit((data) => console.log(data))}
{...register('name', { required: true })}
error={!!errors.name}
/>
解决方案
您必须在注册传播后放置 onChange
const textField = register('name', { required: true })
return (
<input
className="form-control"
type="file"
{...textField}
onChange={(e) => {
textField.onChange(e);
handleSubmit(e);
}}
/>
)
推荐阅读
- c# - 如何按照 MVVM 模式绑定整个数据网格以查看 MVVM
- c++ - free() : MPI_Finalize() 期间的无效指针
- wireshark - 如何删除wireshark中的零数据包(空流)记录
- c# - 正则表达式拼图查找所有有效的字符串组合
- scala - 进行模式匹配时的Scala类型不匹配
- r - 从2个矩阵R中找到每一行的最小值
- android - apk does not exist on disk with a new Project
- wso2is - Wso2 用户存储从 LDAP 迁移到数据库(自定义用户存储)
- xquery - 如何从数据中心框架中的 Collector.xqy 执行任何更新语句?
- java - 在 Java 中使用 HttpURLConnection 发送特殊字符