簡體   English   中英

主菜單中的標簽菜單

[英]Tab Menu in prime ng

我想在標簽菜單中加載組件模板。

<p-tabMenu class="ui-tabmenu" [model]="items"></p-tabMenu>

this.items = [
    {label: 'Contacts', icon: 'fa-bar-chart'},
    {label: 'Call Logs', icon: 'fa-calendar'} 
];

這是我的代碼。 它顯示兩個菜單聯系人和通話記錄。 當我點擊conatct菜單時,我想加載contactcomponent.html ,當點擊通話日志菜單時加載calllogscomponent.html 我該如何實現呢?

如果這是您的頂級菜單(或者您希望設置主頁面URL),請考慮使用路由器。 這將自動與路由器中設置的當前“頁面”同步:

https://www.primefaces.org/primeng/#/menumodel

export class MenuDemo implements OnInit {

    private items: MenuItem[];

    ngOnInit() {
        this.items = [{
            label: 'File',
            items: [
                {label: 'New', icon: 'fa-plus', url: 'http://www.primefaces.org/primeng'},
                {label: 'Open', icon: 'fa-download', routerLink: ['/pagename']}
            ]
        }];
    }
}
<p-tabMenu #menuItems [model]="items" [activeItem]="activeItem" (click)="activateMenu()"></p-tabMenu>

items:MenuItem[];
activeItem: MenuItem;
@ViewChild('menuItems') menu: MenuItem[];

this.items = [
    {label: 'Contacts', icon: 'fa-bar-chart'},
    {label: 'Call Logs', icon: 'fa-calendar'} 
];
this.activeItem = this.items[0];

activateMenu(){
   this.activeItem =this.menu['activeItem'];
}

創建模板引用變量#menuItems並在ts中使用它來對該模板進行修改。單擊另一個菜單,它會觸發activateMenu()函數,它將新選擇的菜單設置為活動菜單。在html中使用* ngIf在兩個菜單之間切換與activeItem.label比較。

這適合我。

根據Primeng TabMenu的文檔,它們沒有給出這樣的功能你只能設置屬性默認情況下沒有一個回調函數

來源: - * https://www.primefaces.org/primeng/#/tabmenu

相反,你可以使用breadcrumb重定向頁面,你也可以提供URL,而不是根據你的需要用css設計面包屑的樣式

https://www.primefaces.org/primeng/#/breadcrumb

更新

您可以在那里使用它,您可以在菜單中調用回調函數和導航

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM