React,动态添加textarea导致错误onChange

时间:2017-10-25 19:49:31

标签: reactjs antd

我的代码在这里 - https://codesandbox.io/s/92xmm6zvmo

这个想法是用户点击表格中的“编辑”链接,该行展开并在展开的行中打开textarea,以便用户可以在其中编辑其JSON。除了textarea的onChange事件处理程序之外,这一切都很有效。当事件触发时,它似乎缺少对此的引用,并且无法绑定适当的事件处理程序。我不明白为什么会这样,我希望有一个对ExpandableTable组件的引用,因为expandedRowRender()方法属于该类。

其他表单字段(未动态添加)似乎工作正常。

1 个答案:

答案 0 :(得分:1)

展示您的代码可以让您的工作更轻松。 我认为它现在正在工作。

https://codesandbox.io/s/wkym185vpl

问题是,你没有正确绑定" 这个"上下文。如果您要使用箭头功能,请确保所有类功能都是:

Class MyClass{
  expandedRowRender = () => {}
}

如果您正在执行expandedRowRender(){},请确保将其绑定在构造函数中。

Class MyClass{
      constructor(){
        this.expandedRowRender = this.expandedRowRender.bind(this);
      }
      ...
      expandedRowRender(){}
    }