React + Typescript:如何处理事件

时间:2018-07-07 10:29:01

标签: reactjs typescript

如何使用React和Typescript处理事件?我似乎无法正确输入类型来像React docs在常规JS中那样具有通用输入处理程序。

state = {
  userId: '',
  amount: undefined,
  type: 'CREDIT',
  note: '',
};

handleChange = (event: React.FormEvent<HTMLInputElement>) => {
  this.setState({
    [event.target.name]: event.target.value
  });
};

如您所见,我混合使用状态键和值类型,并且由于事件类型没有被束缚为任何类型,因此变量键[event.target.name]会因错误而失败...

Argument of type '{ [x: string]: any; }' is not assignable to parameter of type 'State | Pick<State, "type" | "userId" | "amount" | "note">...

除了为每个字段创建一个特殊的事件处理程序之外,解决此问题的最佳方法是什么?

0 个答案:

没有答案