Full React rendering, Column Filtering Improvements, Sparklines Crosshair, Accessibility Support Improvements
What's New Copy
AG Grid 27.0 adds many new features - full React rendering, Column Filtering Improvements, Sparklines Crosshair and Accessibility Support Improvements.
Documentation Copy
See AG Grid 27.0 Documentation.
Breaking Changes Copy
Supported Environments Copy
AG Grid 27 does not support Polymer, Angular 7, AngularJS and Internet Explorer 11. If you are using Polymer, Angular 7, AngularJS or need to support Internet Explorer 11 please use AG Grid 26, which will be a long-term support release. You will still be able to report issues against AG Grid 26 and we will release new minor versions of AG Grid 26 to address these.
Server-Side Row Model Copy
getRowNodeId()
is now required when Row Selection is enabled in the Server-Side Row Model.
React / Angular / Vue Copy
get{comp-name}Instance[s]()
(e.g.,getCellRendererInstances
) is no longer needed. These methods now return the React / Angular / Vue component if one exists.
Clipboard Copy
- The following methods now accept parameterized objects:
copySelectedRowsToClipboard(params?: IClipboardCopyRowsParams)
copySelectedRangeToClipboard(params?: IClipboardCopyParams)
- Cell values copied exclusively from the same row are now pasted in the same row (previously, each copied value was pasted on a separate row). Cell values are now copied in the order they appear in the grid (previously, cell values were copied in the order of selection).
Integrated Charts Copy
- TypeScript users will need to replace the
ChartType
enum with the corresponding string literal. For example,ChartType.GroupedColumn
should be changed to'groupedColumn'
.
Removal of Deprecated APIs Copy
Rendering Copy
- The following methods were previously deprecated and have now been removed:
gridApi.refreshView()
- usegridApi.refreshCells()
orgridApi.redrawRows()
instead.gridApi.refreshRows()
- usegridApi.refreshCells()
orgridApi.redrawRows()
instead.gridApi.rowDataChanged
- userowNode.setRowData(newData)
to set value on a particular node, orredrawRows
to refresh everything.gridApi.refreshGroupRows()
- usegridApi.refreshCells()
instead.gridApi.refreshCells()
now performs dirty checking and only refreshes cells that have changed, so it should not be necessary to only refresh the group rows.
Sorting Copy
gridApi.setSortModel()
andgridApi.getSortModel()
were previously deprecated and have now been removed. Sort information is now part of Column State. UsecolumnApi.applyColumnState()
andcolumnApi.getColumnState()
instead.
Filters Copy
The following Filter Options / APIs were previously deprecated and have now been removed:
GridOptions
floatingFilter
- removed, useColDef.floatingFilter
instead.enableOldSetFilterModel
- removed, use the current model structure for SetFilter instead.
GridApi
isAdvancedFilterPresent()
- removed, useisColumnFilterPresent()
instead.getFilterApiForColDef()
- removed, usegetFilterInstance()
instead.getFilterApi()
- removed, usegetFilterInstance()
instead.
IFilterParams
valueGetter()
callback arguments have changed. They are no longer a solitaryRowNode
, but an object conforming to theValueGetterFunc
interface contract for consistency with othervalueGetter
parameters across the grid.
IFloatingFilterParams
onFloatingFilterChanged()
- removed, useparentFilterInstance()
callback instead.
IProvidedFilterParams
clearButton
,resetButton
, andapplyButton
- removed, usebuttons
instead.
IScalarFilterParams
nullComparator
andNullComparator
- removed, useincludeBlanksInEquals
,includeBlanksInLessThan
, andincludeBlanksInGreaterThan
instead.
Filter
- The
Filter
interface has been completely removed. UseIFilter
instead.
ProvidedFilter
onFilterChanged()
- removed, useapi.onFilterChanged()
instead.
ISetFilterParams
syncValuesLikeExcel
- removed; this has been the default since deprecation in v22.0.0.selectAllOnMiniFilter
- removed; this has been the default since deprecation in v22.0.0.suppressSyncValuesAfterDataChange
- removed.suppressRemoveEntries
- removed.newRowsAction
has now been removed; the previous'keep'
setting is now the default.
SetFilter
setLoading
is now handled automatically.selectEverything()
- removed, usesetModel()
instead.selectNothing()
- removed, usesetModel()
instead.unselectValue()
- removed, usesetModel()
instead.selectValue()
- removed, usesetModel()
instead.isValueSelected()
- removed, usegetModel()
instead.isEverythingSelected()
- removed, usegetModel()
instead.isNothingSelected()
- removed, usegetModel()
instead.getUniqueValueCount()
- removed, usegetValues()
instead.getUniqueValue()
- removed, usegetValues()
instead.
Deprecations Copy
This release includes the following deprecations:
Components Copy
{comp-name}Framework
(e.g.,cellRendererFramework
) is no longer required for assigning Custom Framework Components. Use{comp-name}
(e.g.,cellRenderer
) instead. Likewise, the grid propertyframeworkComponents
is deprecated; use the grid propertycomponents
instead.
Keyboard Navigation Copy
gridOptions.suppressCellSelection
is deprecated; usegridOptions.suppressCellFocus
instead.- The following interfaces have deprecated properties:
StartEditingCellParams { keyPress: number }
useStartEditingCellParams { key: string }
instead.ICellEditorParams { keyPress: number }
useICellEditorParams { key: string }
instead.IRichCellEditorParams { keyPress: number }
useIRichCellEditorParams { key: string }
instead.ILargeTextEditorParams { keyPress: number }
useILargeTextEditorParams { key: string }
instead.ISelectCellEditorParams { keyPress: number }
useISelectCellEditorParams { key: string }
instead.ITextCellEditorParams { keyPress: number }
useITextCellEditorParams { key: string }
instead.NavigateToNextCellParams { key: number }
useNavigateToNextCellParams { key: string }
instead.
Columns Copy
gridApi.getOriginalColumnGroup()
is deprecated; usegridApi.getProvidedColumnGroup()
instead.
Filters Copy
ITextFilterParams.textCustomComparator
is deprecated; useITextFilterParams.textMatcher
instead.
Changes List Copy
If you would like to see the full list of changes in this release, please see the Changelog.