В Ag-Grid у вас есть параметры сетки, которые вы определяете в какой-то момент:
this.gridOptions = {
// ...
columnDefs: [ 'DATE': {
headerName: 'Datum',
field: 'myJson.date',
cellRenderer: (params: ICellRendererParams) => params.value ?
`<div class="my-awesome-date-style">${this._customDatePipe.transform(params.value)}</div>` : ''
}],
// ...
}
Чтобы использовать канал (будь то собственный CustomDatePipe или собственный DatePipe в Angular) внутри файла машинописного текста (например, вне шаблона), вы должны внедрить его:
constructor(private readonly _customDatePipe: CustomDatePipe) {}
и включите CustomDatePipe (или CommonModule для собственного DatePipe) в поставщики вашего модуля.
Метод канала transform () отформатирует часть JSON (в вашем случае свойство date), которую вы хотите отобразить, как только AgGrid попытается ее отобразить.
PS: Если вы используете AgGrid CellRenderer-Component, вы можете просто использовать конвейер непосредственно в его шаблоне без внедрения (хотя необходимо добавить провайдеров):
<div class="my-awesome-date-style">${params.date | customDatePipe}</div>