Reactjs 如何在ag网格单元渲染器中添加onclick事件并访问类函数

Reactjs 如何在ag网格单元渲染器中添加onclick事件并访问类函数,reactjs,ag-grid-react,Reactjs,Ag Grid React,我想在时间列定义中为reactjs中的ag grid表列添加一个按钮。我需要调用一个类函数。 我想创建onclick事件并将params值传递给函数,然后从那里进行api调用 columnDefs=[{ ..... { 标题名称:“视图”, 字段:“id”, 可排序:false, 筛选器:false, 科立德:“视图”, CellRenderFramework:函数(参数){ 返回测试 }, }, ...... ]; } handleClick(){ log(“一些API调用和状态更改”);

我想在时间列定义中为reactjs中的ag grid表列添加一个按钮。我需要调用一个类函数。 我想创建onclick事件并将params值传递给函数,然后从那里进行api调用

columnDefs=[{
..... {
标题名称:“视图”,
字段:“id”,
可排序:false,
筛选器:false,
科立德:“视图”,
CellRenderFramework:函数(参数){
返回测试
},
},
......
];
}
handleClick(){
log(“一些API调用和状态更改”);
}
render(){
报税表(<
div>
<
div id=“myGrid”
样式={
{
高度:“100%”,
宽度:“100%”
}
}
className=“ag主题材料”>
<
AgGridReact启用排序={
真的
}
groupSelectsChildren={
真的
}
行数据={
这个国家组织
}
columnDefs={
这是我的
}
onGridReady={
这是我准备好了吗
} >
<
/AgGridReact>
<
/div>
}

导出默认OrganizationList;
在列定义中使用CellRenderFramework,而不是使用CellRenderFramework,这样agGridReact将知道您正在返回jsx元素

e、 g:

colDefs=[{{
标题名称:“视图”,
字段:“id”,
科立德:“视图”,
CellRenderFramework:函数(参数){
回归试验
},
},
....
}]

另外,别忘了将cell renderer函数绑定到组件类构造函数,否则您将无法访问

您真的认为提出这样的问题有助于我们了解实际问题吗?至少分享您尝试过的代码这对我有用
CellRenderFramework:(props)=>{return(Click});}
TypeError:无法读取未定义的属性'handleClick'获取此错误。如您所说进行了更改,如果我错了,请告诉我。
const columnDefs=[{{headerName:“View”,field:“id”,colId:“View”,CellRenderFramework:function(params){return View}….];类测试扩展React.Component{constructor(props){super(props)this.handleClick=this.handleClick.bind(this);}
handleclick未绑定到组件类。请在构造函数中的
this.state
之前添加此行,
this.handleclick=this.handleclick.bind(this);
您在组件类外部定义了column定义,而handleClick在测试类内部。将columnDefs放在state内部,并在渲染时将其传递给agGridReact 1。我在类外部定义columnDefs。2.我没有在构造函数内部定义state。3.我正在定义
this.handleClick=this.handleClick.bind(this)
super(props)
之后,您可以在构造函数
this.columnDefs=columnDefs
中执行此操作,然后在呈现agGridReact
columnDefs={this.columnDefs}
colDefs = [{ ...{
headerName: "View",
field: "id",
colId: "view",
cellRendererFramework: function(params) {
  return <button onClick={ this.handleClick }> Test </button>
},
  },
  ....
}]