属性 'target' 在类型 'HTMLInputElement' 上不存在。打字反应。 TS2339

Property 'target' does not exist on type 'HTMLInputElement'. TypeScript React. TS2339

每当输入元素改变时都会调用handleChange()函数,但似乎无法访问event.target.value

错误信息

Property 'target' does not exist on type 'HTMLInputElement'.  TS2339

handleChange()

handleChange = (event:HTMLInputElement) => {
    console.log(event);
    const { name, value } = event.target;
    this.setState({[name]: value});
};

输入元素

<input name='email' type='email' value={this.state.email} onChange={this.handleChange} required />

您在 event 上输入的类型有误。这不是 HTMLInputElement,而是 事件 。对于更改,它是 React.ChangeEvent<T>,其中 T 是您正在使用它的元素类型(在您的情况下为 HTMLInputElement),因此:

handleChange = (event: React.ChangeEvent<HTMLInputElement>) {
    // ...