I use the primeng datatable beeing close to my final need, however I would like to overload it because I need an additional functionality (By example, I would like to change the header to be editable at click).
So I started by trying to execute an instruction by expanding the datatable class as follows:
My component that uses the datable:
providers: [{provide: DataTable, useExisting: CustomDataTable}]
My class extending the datatable :
import { DataTable, DomHandler } from 'primeng/primeng';
import { Component, Injectable, ElementRef, Renderer, IterableDiffers, Renderer2, NgZone, ChangeDetectorRef, Input } from '@angular/core';
import { ObjectUtils } from 'primeng/components/utils/objectutils';
export class CustomDataTable extends DataTable {
constructor(el: ElementRef, domHandler: DomHandler, differs: IterableDiffers, renderer: Renderer2, changeDetector: ChangeDetectorRef, objectUtils: ObjectUtils, zone: NgZone) {
super(el, domHandler, differs, renderer, changeDetector, objectUtils, zone);
// CUSTOM INSTRUCTION
}
initColumns() {
// super.initColumns(); // I tried adding it
// CUSTOM INSTRUCTION
}
}
However my "INSTRUCTIONS" are never executed, and no error appears in console or on the browser. Do I misuse the extend of the datatable?