Angular PrimeNG TieredMenu弹出式菜单

Angular PrimeNG TieredMenu弹出式菜单

Angular PrimeNG是一个开源框架,拥有丰富的原生Angular UI组件,可以用来做很好的造型,这个框架用来制作响应式网站非常方便。在这篇文章中,我们将看到如何在Angular PrimeNG中使用TieredMenu Popup。

TieredMenu Popup允许用户使用一个按钮切换使菜单以弹出层的形式出现。菜单可以通过启用popup属性或调用从锚点元素传递事件的toggle方法来弹出。菜单的默认值是inline。

Angular PrimeNG TieredMenu Popup属性:

  • popup。此属性定义了菜单是否会以弹出的方式显示。它是布尔数据类型,默认值是false。
  • model。这个属性是一个菜单项的数组。它是数组数据类型,默认值是null。

语法:

<button #btn type="button" pButton 
    icon="..." label="..." 
    (click)="geeks.toggle($event)">
</button>

<p-tieredMenu #geeks [model]="gfg" 
    [popup]="true">
</p-tieredMenu>

创建Angular应用程序并安装模块:

第1步:使用以下命令创建一个Angular应用程序。

ng new appname

第2步:创建你的项目文件夹即appname后,使用以下命令移动到它。

cd appname

第3步在你给定的目录中安装PrimeNG。

npm install primeng --save
npm install primeicons --save

项目结构:完成安装后,它将看起来像下面这样。

Angular PrimeNG TieredMenu弹出式菜单

Project Structure

示例1:下面是使用Angular PrimeNG演示TieredMenu Popup的代码示例。

<h2 style="color: green">GeeksforGeeks</h2>
<h5>
  Angular PrimeNG TieredMenu Popup
</h5>
<button #btn type="button" 
        pButton label="Click Here" 
        (click)="geeks.toggle($event)"> 
</button>
<p-tieredMenu #geeks [model]="gfg" 
              [popup]="true"> 
</p-tieredMenu>
import { Component } from "@angular/core";
import { MenuItem } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html",
})
export class AppComponent {
  gfg: MenuItem[];
  
  ngOnInit() {
    this.gfg = [
      {
        label: "JavaScript",
        items: [
          {
            label: "JavaScript1",
            items: [
              {
                label: "JavaScript1.1",
              },
              {
                label: "JavaScript1.2",
              },
            ],
          },
          {
            label: "JavaScript2",
          },
          {
            label: "JavaScript3",
          },
        ],
      },
      {
        label: "HTML",
        items: [
          {
            label: "HTML 1",
          },
          {
            label: "HTML 2",
          },
        ],
      },
      {
        label: "Angular",
  
        items: [
          {
            label: "Angular 1",
          },
          {
            label: "Angular 2",
          },
        ],
      },
    ];
  }
}
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { TieredMenuModule } from "primeng/tieredmenu";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    TieredMenuModule,
    ButtonModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

Angular PrimeNG TieredMenu弹出式菜单

示例2:下面是另一段代码,通过指定一些带有图标的按钮类,演示了Angular PrimeNG中的TieredMenu Popup。

<h2 style="color: green">GeeksforGeeks</h2>
<h5>
    Angular PrimeNG TieredMenu Popup
</h5>
<button #btn type="button" 
        pButton label="GfG courses" 
        (click)="geeks.toggle($event)" 
        class="p-button-success" 
        icon="pi pi-code">
</button>
<p-tieredMenu #geeks [model]="gfg" 
              [popup]="true">
</p-tieredMenu>
import { Component } from "@angular/core";
import { MenuItem } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html",
})
export class AppComponent {
  gfg: MenuItem[];
  
  ngOnInit() {
    this.gfg = [
      {
        label: "Placement - Self Paced",
        items: [
          {
            label: "Batch1",
            items: [
              {
                label: "Batch1.1",
              },
              {
                label: "Batch1.2",
              },
            ],
          },
          {
            label: "Batch2",
          },
          {
            label: "Batch3",
          },
        ],
      },
      {
        label: "Gate Preparation",
        items: [
          {
            label: "Batch1",
          },
          {
            label: "Batch2",
          },
        ],
      },
      {
        label: "C++ STL",
  
        items: [
          {
            label: "Batch1",
          },
          {
            label: "Batch2",
          },
        ],
      },
    ];
  }
}
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { TieredMenuModule } from "primeng/tieredmenu";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    TieredMenuModule,
    ButtonModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

Angular PrimeNG TieredMenu弹出式菜单

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程