我正在尝试创建一个onClick事件类型,以在使用TypeScript时捕获React中的目标属性。但我收到错误消息“ [ts]属性'getAttribute'在类型'EventTarget'上不存在”。谁能帮助您提供有关解决此问题的最佳做法的见解?
我试图对event.target部分使用另一个帮助器功能。这样,我就可以对该部分以及该函数中的getAttribute部分进行排版。但是,有人告诉我这不是最佳实践,也不是错误的方法。
const Option = (props: OptionProps) => {
const HandleOptionChange = (event: React.MouseEvent<HTMLLIElement>) => {
return props.onOptionChange(event.target.getAttribute('value'));
}
return (
<li
key={props.key}
value={JSON.stringify(props.word)}
onClick={HandleOptionChange}
>
{props.word.value}
</li>
)
}
ts错误消息:
[ts]属性'getAttribute'在'EventTarget'类型上不存在。 任何
答案 0 :(得分:0)
这对我有用
const HandleOptionChange = (event: React.MouseEvent<HTMLLIElement>) => {
const el = event.target as HTMLInputElement
return props.onOptionChange(el.getAttribute('value'));
}
我刚刚添加了HTMLInputElement
作为event.target类型