我有一个简单的menuitem数组,用于从prime填充tabmenu组件。看起来像这样:
.ts文件:
items = MenuItem[];
activeItem = MenuItem;
//constructor etc...
ngOnInit() {
this.items = [
{label: 'Homework', icon: 'fa-file-pdf-o'},
{label: 'Movies', icon: 'fa-file-pdf-o'},
{label: 'Games', icon: 'fa-file-pdf-o'},
{label: 'Pictures', icon: 'fa-file-pdf-o'}
];
this.activeItem = this.items[2]
}
.html文件:
<p-tabMenu [model]="items" [activeItem]="activeItem"></p-tabMenu>
我知道我可以在active item的帮助下设置
tabmenu
的activeitem,如下所示:this.activeItem = this.items[2]
我现在的问题是我是否可以在单击时检索activeitem?例如
<p-tabMenu [model]="items" [activeItem]="activeItem" (click)="getActiveItem(...)"></p-tabMenu>
getactiveitem方法:
getActiveItem(activeItem: MenuItem){
this.activeItem = activeItem;
console.log(activeItem);
return this.activeItem;
}
从primering链接到tabmenu。CLICK
最佳答案
您应该能够使用command
,因为选项卡是menumodel api的一部分
单击项时要调用的函数是使用
命令属性。
this.items = [
...
{label: 'Pictures', icon: 'fa-file-pdf-o', command: (event) => {
//event.originalEvent: Browser event
//event.item: menuitem metadata
}}
];