在函数中创建输入更改事件

时间:2019-05-05 20:06:05

标签: reactjs typescript dom-events

我正在使用与打字稿反应。我有一个获取输入更改事件的父函数。

父组件:

public onFormChange = (key: string) =>
  (event: React.ChangeEvent<HTMLInputElement>): void => {
  .....
  }

public render(): React.ReactNode {
  return (
   ....
   <Child onChange={onFormChange(key)}>
   ...
  )
}

我已经在Child组件中创建了一个对象,该对象看起来像事件:

public onChangeTitle = () => {

  this.props.onChange({target: {value: 'val'}});
}

但是,它会触发Maximum update depth exceeded错误

那么,我应该如何在子函数中以编程方式创建Event?我无法更改父函数。请用打字稿举例。

1 个答案:

答案 0 :(得分:0)

相反(因为它正在调用该函数。)

<Child onChange={this.onFormChange(key)}>

使用(设置参考)

<Child onChange={this.onFormChange}>