📜  Angular PrimeNG 选择按钮组件

📅  最后修改于: 2022-05-13 01:56:31.698000             🧑  作者: Mango

Angular PrimeNG 选择按钮组件

Angular PrimeNG 是一个开源框架,具有丰富的原生 Angular UI 组件集,可用于出色的样式,并且该框架用于非常轻松地制作响应式网站。在本文中,我们将了解如何在 Angular PrimeNG 中使用 SelectButton 组件。

SelectButton 组件: 用于制作一组按钮,用户可以从中选择一个值。

特性:

  • options :它是一个数组,表示要显示为可用选项的选择项。它是数组数据类型,默认值为空。
  • optionLabel :用于给出选项的标签。它是字符串数据类型,默认值为标签。
  • optionValue :用于给出选项的值,未定义时默认为选项本身。它是字符串数据类型,默认值为value。
  • multiple :用于设置指定时,允许选择多个值。它是布尔数据类型,默认值为false。
  • tabindex :用于设置元素的指定tab顺序。它是数字数据类型,默认值为 0。
  • style :用于设置元素的内联样式。它是字符串数据类型,默认值为空。
  • styleClass :用于设置元素的样式类。它是字符串数据类型,默认值为空。
  • ariaLabelledBy:用于建立组件和标签之间的关系,其值应为一个或多个元素 ID。它是字符串数据类型,默认值为空。
  • disabled :指定元素应该被禁用,它是布尔数据类型,默认值为 false。
  • dataKey :用于标识选项的属性,为字符串数据类型,默认值为null。

事件:

  • onChange:当值改变时触发的回调。
  • onOptionClick:它是在单击按钮时触发的回调。

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

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

    ng new appname
  • 第 2 步:创建项目文件夹(即 appname)后,使用以下命令移动到该文件夹。

    cd appname
  • 第 3 步:在给定目录中安装 PrimeNG。

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

项目结构:它将如下所示:

示例 1:这是展示如何使用 SelectButton 组件的基本示例。

app.component.html

GeeksforGeeks

PrimeNG SelectButton component


app.component.ts
import { Component } from "@angular/core";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html"
})
export class AppComponent {
  gfg: any[];
  
  constructor(private primeNGConfig: PrimeNGConfig) {
    this.gfg = [
      { label: "Off", value: "off" },
      { label: "On", value: "on" }
    ];
  }
  
  ngOnInit() {
    this.primeNGConfig.ripple = true;
  }
}


app.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { SelectButtonModule } from "primeng/selectbutton";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SelectButtonModule,
    ButtonModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}


app.component.html

GeeksforGeeks

PrimeNG SelectButton component


app.component.ts
import { Component } from "@angular/core";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html",
})
export class AppComponent {
  gfg: any[];
  
  constructor(private primeNGConfig: PrimeNGConfig) {
    this.gfg = [
      { label: "Selection 1", value: 1 },
      { label: "Selection 2", value: 2 },
      { label: "Selection 3", value: 3 },
    ];
  }
  
  ngOnInit() {
    this.primeNGConfig.ripple = true;
  }
}


pp.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { SelectButtonModule } from "primeng/selectbutton";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SelectButtonModule,
    ButtonModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}


app.component.ts

import { Component } from "@angular/core";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html"
})
export class AppComponent {
  gfg: any[];
  
  constructor(private primeNGConfig: PrimeNGConfig) {
    this.gfg = [
      { label: "Off", value: "off" },
      { label: "On", value: "on" }
    ];
  }
  
  ngOnInit() {
    this.primeNGConfig.ripple = true;
  }
}

app.module.ts

import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { SelectButtonModule } from "primeng/selectbutton";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SelectButtonModule,
    ButtonModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

示例 2:在本示例中,我们将了解如何在 selectButton 组件中使用多个属性。

app.component.html

GeeksforGeeks

PrimeNG SelectButton component

app.component.ts

import { Component } from "@angular/core";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "my-app",
  templateUrl: "./app.component.html",
})
export class AppComponent {
  gfg: any[];
  
  constructor(private primeNGConfig: PrimeNGConfig) {
    this.gfg = [
      { label: "Selection 1", value: 1 },
      { label: "Selection 2", value: 2 },
      { label: "Selection 3", value: 3 },
    ];
  }
  
  ngOnInit() {
    this.primeNGConfig.ripple = true;
  }
}

pp.module.ts

import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { BrowserAnimationsModule } 
    from "@angular/platform-browser/animations";
  
import { AppComponent } from "./app.component";
import { SelectButtonModule } from "primeng/selectbutton";
import { ButtonModule } from "primeng/button";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SelectButtonModule,
    ButtonModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

参考: https://primefaces.org/primeng/showcase/#/selectbutton