angular - PrimeNG-menyalternativets kommandobindning till basklassfunktion
Jag försöker binda en basklassfunktion till mina Angular 2 PrimeNG-menyalternativ.
HTML
<p-menu #menu popup="popup" [model]="exportItems"></p-menu>
<button type="button" class="fa fa-download" title="Export As" (click)="menu.toggle($event)"></button>
Typescript
exportItems: MenuItem[];
//Inside NgOnInit
this.exportItems = [
{ label: 'SVG', command: super.ExportSVG },
{ label: 'PNG', command: super.ExportPNG }];
//Error here
//Cannot read property 'canvasID' of undefined
ExportSvg(): void
{
var canvas = document.getElementById(this.canvasID) as HTMLCanvasElement;
.....
}
Jag tror att basklassens funktion inte kan lösas när man binder till ett kommando. Några ledtrådar om hur man kan fixa detta?
Svar #1
Tja, jag löste detta genom att följa kommandobindningen.
this.exportItems = [
{ label: 'SVG', command: (onclick)=> {super.ExportSVG()} },
{ label: 'PNG', command: (onclick)=> {super.ExportPNG()} }];
Det verkar som att när man binder onClick-händelsen på menyposten fungerar det bra.
