2017-11-30 6 views
0

Ich habe eine Funktion, die einen sich ändernden Textfeld behandelt:Typesafe onChange für Reagieren JS Formcontrol Ereignisse

private handleNameChange(e: React.FormEvent<FormControl>) { 
    const name = e.target.value; 
    this.setState({ name }); 
    this.props.editGroupName(name); 
} 

Dies ist auf die onChange eines Formcontrol verdrahtet ist:

<FormControl type='text' placeholder='Name' value={this.state.name} onChange={this.handleNameChange} /> 

Dies ist jedoch vertippte, nach Typoskript:

TS2339: Property 'value' does not exist on type 'EventTarget'. 

ich habe auch versucht currentTarget verwenden. Wie kann ich dieses Problem lösen?

Antwort

1

Versuchen Sie, e: React.FormEvent<FormControl> durch e: React.FormEvent<FormControlProps> zu ersetzen.

+0

Dies funktioniert; aber warum? Das scheint ... seltsam. –

+0

Ich habe die Lösung hier gefunden: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/16208 – adys

+0

Ehrfürchtig, danke! –

Verwandte Themen