Overlays are used for displaying messages over the top of the grid. There are two built-in overlays: loading and no-rows.
Loading overlay Copy Link
Show or hide the loading overlay by setting the loading property to true or false.
Show or hide the loading overlay. |
The loading overlay takes precedence over the no-rows overlay and is not dependent of the state of rowData.
No rows overlay Copy Link
When rowData is set to an empty array [], the grid automatically displays the no-rows overlay. The no-rows overlay can also be programmatically shown / hidden via the grid API.
Show the no-rows overlay. If suppressNoRowsOverlay is set, or if loading is true, this will not do anything. |
Hide the no-rows overlay if it is showing. |
The automatic displaying of the no-rows overlay can be suppressed by setting suppressNoRowsOverlay to true.
Initial loading overlay Copy Link
If loading is not explicitly defined, the grid will automatically show the loading overlay until both rowData and columnDefs are provided with a non-null value for the first time. This behaviour can be suppressed by initialising the grid with an appropriate loading state.
Customisation Copy Link
Overlays can be customised by providing either a HTML string or custom component via grid properties.
Custom Loading Overlay Copy Link
The loading overlay can be customised via the grid properties overlayLoadingTemplate or loadingOverlayComponent and loadingOverlayComponentParams.
Provide a HTML string to override the default loading overlay. Supports non-empty plain text or HTML with a single root element. |
Provide a custom loading overlay component. |
Customise the parameters provided to the loading overlay component. |
Implement this interface to provide a custom overlay when data is being loaded.
interface ILoadingOverlayComp<TData = any, TContext = any> {
// Return the DOM element of your component, this is what the grid puts into the DOM
getGui(): HTMLElement;
// Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here
destroy?(): void;
// The init(params) method is called on the component once.
init?(params: TParams): AgPromise<void> | void;
refresh?(params: TParams): void;
}This example demonstrates how to provide a custom loading overlay component customised via parameters.
Custom No Rows Overlay Copy Link
The no-rows overlay can be customised via the grid properties overlayNoRowsTemplate or noRowsOverlayComponent and noRowsOverlayComponentParams.
Provide a HTML string to override the default no-rows overlay. Supports non-empty plain text or HTML with a single root element. |
Provide a custom no rows overlay component. |
Customise the parameters provided to the no-rows overlay component. |
Implement this interface to provide a custom overlay when no-rows loaded.
interface INoRowsOverlayComp<TData = any, TContext = any> {
// Return the DOM element of your component, this is what the grid puts into the DOM
getGui(): HTMLElement;
// Gets called once by grid when the component is being removed; if your component needs to do any cleanup, do it here
destroy?(): void;
// The init(params) method is called on the component once.
init?(params: TParams): AgPromise<void> | void;
refresh?(params: TParams): void;
}This example demonstrates how to provide a custom no-rows overlay component customised via parameters.