加载网格后无法更改 overlayNoRowsTemplate
Cannot change overlayNoRowsTemplate after grid loaded
没有行可显示有两种不同的情况。而且每次都想根据情况改模板。
我正在更新 overlayNoRowsTemplate
,但在加载网格后无法替换模板。
刷新网格不会刷新 overlayNoRowsTemplate
.
您只能通过自己的 Overlay Component
动态处理它,因为 overlayNoRowsTemplate
与其他 gridOptions
一样不支持动态更改。
import { Component } from '@angular/core';
import { INoRowsOverlayAngularComp } from "ag-grid-angular";
@Component({
selector: 'app-no-rows-overlay',
template: `<div class="ag-overlay-loading-center" style="background-color: lightcoral; height: 9%">` +
` <i class="fa fa-frown-o"> {{this.params.noRowsMessageFunc()}} </i>` +
`</div>`
})
export class CustomNoRowsOverlay implements INoRowsOverlayAngularComp {
private params: any;
agInit(params): void {
this.params = params;
}
}
如您所见,设置并不难,而且您将能够通过 params.api
和 gridOptions.noRowsOverlayComponentParams
.
访问所有相关内容
您可以使用 Grid API 的私有方法,如下所示,
onGridReady(params: any) {
this.gridApi = params.api;
}
在你的私有方法中
(this.gridApi as any).gridOptionsWrapper.setProperty('overlayNoRowsTemplate', 'newTemplate');
没有行可显示有两种不同的情况。而且每次都想根据情况改模板。
我正在更新 overlayNoRowsTemplate
,但在加载网格后无法替换模板。
刷新网格不会刷新 overlayNoRowsTemplate
.
您只能通过自己的 Overlay Component
动态处理它,因为 overlayNoRowsTemplate
与其他 gridOptions
一样不支持动态更改。
import { Component } from '@angular/core';
import { INoRowsOverlayAngularComp } from "ag-grid-angular";
@Component({
selector: 'app-no-rows-overlay',
template: `<div class="ag-overlay-loading-center" style="background-color: lightcoral; height: 9%">` +
` <i class="fa fa-frown-o"> {{this.params.noRowsMessageFunc()}} </i>` +
`</div>`
})
export class CustomNoRowsOverlay implements INoRowsOverlayAngularComp {
private params: any;
agInit(params): void {
this.params = params;
}
}
如您所见,设置并不难,而且您将能够通过 params.api
和 gridOptions.noRowsOverlayComponentParams
.
您可以使用 Grid API 的私有方法,如下所示,
onGridReady(params: any) {
this.gridApi = params.api;
}
在你的私有方法中
(this.gridApi as any).gridOptionsWrapper.setProperty('overlayNoRowsTemplate', 'newTemplate');