有没有办法在 ag 网格中的 2 个单元格渲染器之间传递数据?
Posted
技术标签:
【中文标题】有没有办法在 ag 网格中的 2 个单元格渲染器之间传递数据?【英文标题】:Is there a way to pass data between 2 cell renderers in ag grid? 【发布时间】:2020-09-21 09:52:54 【问题描述】:我的 ag 网格的 2 个列中有 2 个单元格渲染器。第一栏是动作栏。第二列是一个包含数据选项的下拉列表。
动态地,根据从第二列下拉列表中选择的数据,我想更改/切换第一列中的操作图标。这可能吗?
我已经为两个单元格渲染器使用了 cellrendererframework。
【问题讨论】:
【参考方案1】:是的,有可能!
首先,你应该给你添加refresh()
方法cell-dropdown.component
它看起来像:
public refresh(params): boolean
params.api.redrawRows();
return true;
选择新的选择后,它会调用方法refresh()
,并且第一列将重绘
我已经为您的案例创建了示例:
我们有性别下拉菜单,并根据更改的选择 - 第一列的名称将更改
对于性别列使用cellRenderFrameWork
第一列(名称)使用简单的内联cellRender
,看起来像
field: 'name', cellRenderer: params =>
return params.data.gender === "Female" ? params.value : 'Roman'
,
工作示例:https://plnkr.co/edit/HT5fgs0VV5PqErWH
【讨论】:
成功了!但我的情况有点不同。我没有使用内联单元格渲染器,而是使用另一个单元格渲染器框架,传递 params.api.redrawrows 使操作列恢复到我不想要的原始状态。 但是您的回答也将帮助我继续我的下一个挑战。我接受这个答案,因此这是正确的! ? 对不起,我的声誉很低,所以我不赞成这个答案。如果我遇到任何农业网格问题,我会与您联系。再次感谢您:)以上是关于有没有办法在 ag 网格中的 2 个单元格渲染器之间传递数据?的主要内容,如果未能解决你的问题,请参考以下文章
使用 ag 网格在 Angular2 上渲染 excel 表