如何在角度的ag网格单元格中应用自定义css类?

时间:2019-01-19 11:20:58

标签: angular ag-grid-angular

根据我的逻辑,我无法在ag-grid的单元格中按角度应用css。我已将对象分配给网格。但是在该字段上,我分配了一个Object.hours值,并且需要基于Object.status属性应用逻辑。

使用官方文档,我可以按此处https://www.ag-grid.com/javascript-grid-cell-styles/#cell-style-cell-class-cell-class-rules-params所述按当前单元格值应用CSS。但是我需要基于父Object.status来应用它

//Object i am using in ag-grid
this.timeSheet = {
 projectName: 'HRMS',
 mon: {
  hoursWorked: 6,
  status: 'Submitted'
 },
 tue: {
  hoursWorked: 6,
  status: 'Submitted'
 }
}

//Working code
this.columnDefs = [
  {headerName: 'Project', field: 'projectName'},
  {headerName: 'MON ', field: 'mon.hoursWorked', cellClassRules: {
     'text-danger': 'x == 6'}},
];

以上代码有效,并将文本危险类别分配给单个单元格

//I need it to work like that
this.columnDefs = [
   {headerName: 'Project', field: 'projectName'},
   {headerName: 'MON ', field: 'mon.hoursWorked', cellClassRules: {
     'text-danger': 'mon.status == `Submitted'}}, 
 ];

需要帮助“文本危险”:'mon.status =='Submitted'行,它不能那样工作

1 个答案:

答案 0 :(得分:1)

cellClassRules函数采用params对象,该对象包含行的数据。

尝试使用使用params对象的代码。

this.columnDefs = [
  { headerName: 'Project', field: 'projectName' },
  {
    headerName: 'MON ', field: 'mon.hoursWorked', cellClassRules: {
      'text-danger': params => params.data.mon.status == 'Submitted'
    }
  },
];