Я хочу отобразить оверлейный контейнер с кнопкой. Когда кнопка нажата прибудете событие должно быть propagted к родительскому компоненту. В своем исследовании я обнаружил, что была возможность установить noRowsOverlayComponentParams, которой нет в моей версии (22.1.2). Я также не могу получить событие нажатия кнопки.
Есть ли обходной путь или настройка, которая решает мою проблему?
PS: компонент показан правильно, но я не могу получить событие щелчка.
Параметры сетки:
let options: any = {
defaultColDef: {
sortable: true,
filter: true,
resizable: true
},
suppressPaginationPanel: true,
columnDefs: [...],
paginationPageSize: 10,
context: { componentParent: this},
domLayout: 'normal',
enableCellTextSelection: true,
autoSizePadding: 2,
noRowsOverlayComponent: 'myNoRowsComponent',
frameworkComponents: {
myNoRowsComponent: MyNoRowsComponent
}
};
MyNoRowsComponent.ts:
import { Component } from '@angular/core';
import { INoRowsOverlayAngularComp } from '@ag-grid-community/angular';
import { INoRowsOverlayParams, IAfterGuiAttachedParams } from '@ag-grid-enterprise/all-modules';
@Component({
selector: 'app-my-no-rows',
templateUrl: './my-no-rows.component.html',
styleUrls: ['./my-no-rows.component.scss']
})
export class MyNoRowsComponent implements INoRowsOverlayAngularComp {
params: any;
agInit(params: INoRowsOverlayParams): void {
this.params = params;
}
clickImport() {
// this.params.context.componentParent.clickButton(); // <-- here I want to emit an event
}
afterGuiAttached?(params?: IAfterGuiAttachedParams): void { }
}
MyNoRowsComponent.html:
<button (click)="clickImport()">My Button</Button>