У меня есть кнопка, которая в основном импортирует некоторые данные. Эти импортированные данные необходимо сравнить с данными внутри уже загруженной ag-grid, и если есть совпадение, установите для cehckbox этого конкретного узла строки значение true.
Это кнопка, которая проверяет условие:
enableCheck() {
alert('works');
if (this.DataService.isNotBlank(this.rowDataImport)) {
for (let i = 0; i < this.rowDataImport.length; i++) {
if (this.DataService.isNotBlank(this.rowData)) {
for (let j = 0; j < this.rowData.length; j++) {
if (this.DataService.isNotBlank(this.rowData[j].calDate)) {
for (const calDates of this.rowData[j].calDate) {
if (
this.rowDataImport[i].isin === calDates.isin ||
this.rowDataImport[i].portfolioName === calDates.portfolioName ||
this.rowDataImport[i].valuationDate === calDates.valuationDate
)
{
// alert('true')
this.checkValue = true;
} else {
this.checkValue = false;
}
}
}
}
}
}
}
}
this.checkValue - это флаг, который будет истинным, если найдено совпадение.
public gridColumnDefs = [
{
headerName: 'Portfolio Name',
field: 'portfolioName',
cellRenderer: 'agGroupCellRenderer',
headerCheckboxSelection: true,
headerCheckboxSelectionFilteredOnly: true,
checkboxSelection: true,
pinned: 'left',
filter: true,
cellRendererParams:(params) => {
console.log(params);
if (this.checkValue) {
params.node.selected = true;
}
}
},
]
здесь я использовал cellRendererParams. Но я думаю, это будет только для загрузки. Что делать, если я хочу обновить строку ag-grid из значения за пределами, то есть из проверки импорта, как указано выше?