我的代码在这里 - https://codesandbox.io/s/92xmm6zvmo
这个想法是用户点击表格中的“编辑”链接,该行展开并在展开的行中打开textarea,以便用户可以在其中编辑其JSON。除了textarea的onChange事件处理程序之外,这一切都很有效。当事件触发时,它似乎缺少对此的引用,并且无法绑定适当的事件处理程序。我不明白为什么会这样,我希望有一个对ExpandableTable组件的引用,因为expandedRowRender()方法属于该类。
其他表单字段(未动态添加)似乎工作正常。
答案 0 :(得分:1)
展示您的代码可以让您的工作更轻松。 我认为它现在正在工作。
https://codesandbox.io/s/wkym185vpl
问题是,你没有正确绑定" 这个"上下文。如果您要使用箭头功能,请确保所有类功能都是:
Class MyClass{
expandedRowRender = () => {}
}
如果您正在执行expandedRowRender(){}
,请确保将其绑定在构造函数中。
Class MyClass{
constructor(){
this.expandedRowRender = this.expandedRowRender.bind(this);
}
...
expandedRowRender(){}
}