Я использую общедоступную версию "AG Grid" в своем приложении Angular 6.
Моя задача сейчас заключается в следующем: у меня довольно простая структура данных, список которой привязан ксетка для отображения.Исходя из его значений, я хотел бы добавить столбец «Действия» в сетку, чтобы предоставить пользователю доступ к определенным действиям, например, удалить запись, «продвинуть» ее и т. Д.
Для отдельных данных -связанный столбец, я получаю соответствующее значение данных каждой строки, когда она связана, и я могу, например, отформатировать отображение, используя рендеринг ячейки .Я надеялся, что смогу сделать что-то похожее со своим столбцом «Действия» (который не привязан к конкретному элементу данных класса) - но, похоже, мой «рендер-ячейка действия» ничего не получает в основуего решения о.
У меня есть структура данных примерно так:
export interface Indicator {
Id: string;
Name: string;
IsGlobal: boolean;
}
Массив этих Indicators
привязан к AG-сетке в функции OnInit
мой угловой компонент.
Я определяю свой столбец сетки AG следующим образом:
columnDefs = [
{ headerName: 'Name', field: 'Name', width: 200, editable: true },
{ headerName: 'Global', field: 'IsGlobal', editable: false, width: 100,
cellRenderer: (data) => {
// here, "data" refers to the "IsGlobal" value of the row being displayed
if (data.value === true) {
return 'Ja';
} else {
return 'Nein';
}
},
},
{ headerName: 'Actions', width: 125,
cellRenderer: (data) => {
// here, I was hoping the "data" would refer to the entire
// row / object being bound, so that I could check for
// certain conditions to be true (or false)
if (data.IsGlobal.value === true)
{
return '<span class="far fa-trash-alt mr-2" title="Delete entry"></span>' +
'<span class="fab fa-nintendo-switch" title="Promote entry"></span>';
}
else
{
return '<span class="far fa-trash-alt mr-2" title="Delete"></span>';
}
}
}
];
Я хотел бы иметь возможность определить в определениях моих столбцов, что в столбце моего действия отображаетсяКнопка "Продвигать запись" только ЕСЛИ данные строки, о которой идет речь, имеют IsGlobal = false
.Я надеялся, что data
, передаваемый в средство визуализации ячеек, будет объектом данных всей строки (типа Indicator
) - но, похоже, это не так.
Как я могу решить, какойзначки для отображения в столбце «Действия» в определениях моего столбца?