繁体   English   中英

ag-Grid / Reactjs-如何获取columnDefs中的单元格值

[英]ag-Grid/Reactjs - How to get cell value in columnDefs

我在Reactjs应用程序中使用ag-Grid表,下面是我的代码片段:

const columnsDef = [
  .
  .
  {
    headerName: 'Side',
    field: UI_FIELDS.SIDE,
    width: 70,
    cellRenderer: sideRenderer,
    cellRendererParams: {
      value: "BUY"
    }
  },
  .
  .
]

function sideRenderer(params) {
  const value = _.get(params, 'value') || '';
  const styleSuffix = _.isEmpty(value) ? 'default' : value.toLowerCase();

  return `<span class="side-renderer side-renderer-${styleSuffix}">${value}</span>`;
}

我有一个硬编码的value: "BUY"目前在cellRendererParamsvalue: "BUY" ,但我希望它实际上等于该列在该单元格中的任何值,可以是BUYSELL

此值会影响对文本应用的CSS,“ BUY值将变为绿色,而“ Sell值将变为红色。

如何将value设置为等于单元格中的实际文本,而不是像这样硬编码?

你可以做这样的事情

const columnsDef = [
  {
    headerName: 'Side',
    field: UI_FIELDS.SIDE,
    width: 70,
    cellRenderer: (params) => params.value.toLowerCase() === 'buy' ? `<span class="side-renderer side-renderer-buy">${params.value}</span>`  : `<span class="side-renderer side-renderer-sell">${params.value}</span>
  }
]

我想这就是你想要的? 如果没有,请详细说明您的需求。

编辑:您真的不需要通过单元格渲染参数,您可以使用params.value获取单元格的值

感谢'A Ghanima'提到使用params.value ,这帮助我提出了以下params.value的解决方案

{
  headerName: 'Side',
  field: UI_FIELDS.SIDE,
  width: 70,
  cellRenderer: sideRenderer,
  cellRendererParams: (params) => { value: params.value }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM