gpt4 book ai didi

javascript - 类型上不存在属性 - TypeScript

转载 作者:行者123 更新时间:2023-11-28 17:35:46 25 4
gpt4 key购买 nike

创建了自定义Form组件,该组件应该在子输入更改时更改其数据

长话短说:

enter image description here

在当前上下文中,currentTarget 是表单,target 是触发事件的输入。 target 正是我所需要的 - 因为我可以更新数据:

this.setState({
data: {
[e.target.name]: e.target.value
}
});

有什么想法吗?

  • 事件类型错误?
  • 有什么方法可以在 TypeScript 中进行转换(已经尝试过)?
  • 方法错误?
<小时/>

编辑:类似的东西有效,但这是错误的:

handleChange(e: React.FormEvent) { 让 foo: 任意 = e; this.setState({ 数据: { [foo.target.name]: foo.target.value } }); }

最佳答案

经过一些实验:


handleChange(e: React.FormEvent<HTMLFormElement>) {
let name: string = (e.target as HTMLFormElement).name;
let value: string = (e.target as HTMLFormElement).value;
this.setState({
data: {
[name]: value
}
});

这是有道理的,因为在这种情况下 HTMLInputElement ( target ) 被访问为 HTMLFormElement (听众)。

可能有更优雅的解决方案,但这种方法可行。

关于javascript - 类型上不存在属性 - TypeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49178766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com