在这件事上把我的头往墙上撞...
给定该函数
const handleFormSubmitByButton = (event: FormEvent<HTMLFormElement>) => {
event.preventDefault();
const submitter = event.nativeEvent.submitter;
console.log(submitter?.value)
};
和标记
<form onSubmit={handleFormSubmitByButton}>
<button type="submit" name="test" value="test">Submit</button>
</form>
为什么我总是得到Property 'submitter' does not exist on type 'Event'.
?
我尝试使用React
中的SyntheticEvent
,如下所示:SyntheticEvent<HTMLFormElement, SubmitEvent>
这会导致submitter
正常,但随后会抱怨Property 'value' does not exist on type 'HTMLElement'.
作为最后一个结果,我知道它不会工作,我也尝试在submitter
的声明上进行类型转换。
项目中的TS版本为4.9.5
1条答案
按热度按时间yqkkidmi1#
您需要添加保护子句:
Playground