Angular PrimeNG 芯片组件
Angular PrimeNG 是一个开源框架,具有丰富的原生 Angular UI 组件集,可用于出色的样式,并且该框架用于非常轻松地制作响应式网站。在本文中,我们将了解如何在 Angular PrimeNG 中使用 Chips 组件。
芯片组件:它 用于为输入字段设置要输入的多个值。
特性:
- 字段:用于设置 要在芯片上显示的属性的名称。它是字符串数据类型,默认值为空。
- max:用于设置允许的最大条目数。它是数字数据类型,默认值为空。
- disabled:用于禁用复选框。它是布尔数据类型,默认值为false。
- style:用于赋予组件的内联样式。它是字符串数据类型,默认值为空。
- styleClass:组件的样式类。它是字符串数据类型,默认值为空。
- placeholder:用于设置输入的占位符文本。它是字符串数据类型,默认值为空。
- tabindex:用于设置 以跳位顺序排列的元素的索引。它是数字数据类型,默认值为空。
- inputId:它是底层输入元素的 ID 标识符。它是字符串数据类型,默认值为空。
- ariaLabelledBy:此属性在组件和标签之间建立关系,其值应为一个或多个元素 ID。它是字符串数据类型,默认值为空。
- allowDuplicate:用于设置是否允许重复值。它是布尔数据类型,默认值为true。
- inputStyle:用于设置输入字段的内联样式。它是字符串数据类型,默认值为空。
- inputStyleClass:用于设置输入字段的样式类。它是字符串数据类型,默认值为空。
- addOnTab:用于设置是否在tab键上添加item。它是布尔数据类型,默认值为false。
- addOnBlur:用于设置输入失去焦点时是否添加item。它是布尔数据类型,默认值为false。
- 分隔符:用于设置分隔符字符,以在按下时添加一个项目,除了回车键。它是字符串数据类型,默认值为空。
事件:
- onAdd:添加值时触发的回调。
- onRemove:它是一个回调,当一个值被删除时触发。
- onChipClick:当一个芯片被点击时触发的回调。
- onFocus:当输入获得焦点时触发的回调。
- onBlur:当输入失去焦点时触发的回调。
造型:
- p-chips:它是一个容器元素。
- p-chips-token:芯片元素容器。
- p-chips-token-icon:芯片的图标。
- p-chips-token-label:芯片的标签。
- p-chips-input-token:它是输入元素的容器。
创建 Angular 应用程序和模块安装:
第 1 步:使用以下命令创建一个 Angular 应用程序。
ng new appname
第 2 步:创建项目文件夹(即 appname)后,使用以下命令移动到该文件夹。
cd appname
第 3 步:在给定目录中安装 PrimeNG。
npm install primeng --save npm install primeicons --save
项目结构:它将如下所示:
示例 1:这是展示如何使用 Chips 组件的基本示例。
app.component.html
GeeksforGeeks
PrimeNG chips component
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html'
})
export class AppComponent {}
app.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { HttpClientModule } from "@angular/common/http";
import { BrowserAnimationsModule }
from "@angular/platform-browser/animations";
import { AppComponent } from "./app.component";
import { ChipsModule } from "primeng/chips";
import { ButtonModule } from "primeng/button";
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
ChipsModule,
ButtonModule,
FormsModule,
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
app.component.html
PrimeNG Chips Component
{{gfg}}
app.component.ts
import { Component } from "@angular/core";
import { MenuItem } from "primeng/api";
@Component({
selector: "my-app",
templateUrl: "./app.component.html",
})
export class AppComponent {
geeks: string[];
}
app.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { HttpClientModule } from "@angular/common/http";
import { BrowserAnimationsModule }
from "@angular/platform-browser/animations";
import { AppComponent } from "./app.component";
import { ChipsModule } from "primeng/chips";
import { ButtonModule } from "primeng/button";
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
ChipsModule,
ButtonModule,
FormsModule,
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html'
})
export class AppComponent {}
app.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { HttpClientModule } from "@angular/common/http";
import { BrowserAnimationsModule }
from "@angular/platform-browser/animations";
import { AppComponent } from "./app.component";
import { ChipsModule } from "primeng/chips";
import { ButtonModule } from "primeng/button";
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
ChipsModule,
ButtonModule,
FormsModule,
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
输出:
示例 2:在此示例中,我们有一个 Chips 组件的模板。
app.component.html
PrimeNG Chips Component
{{gfg}}
app.component.ts
import { Component } from "@angular/core";
import { MenuItem } from "primeng/api";
@Component({
selector: "my-app",
templateUrl: "./app.component.html",
})
export class AppComponent {
geeks: string[];
}
app.module.ts
import { NgModule } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { FormsModule } from "@angular/forms";
import { HttpClientModule } from "@angular/common/http";
import { BrowserAnimationsModule }
from "@angular/platform-browser/animations";
import { AppComponent } from "./app.component";
import { ChipsModule } from "primeng/chips";
import { ButtonModule } from "primeng/button";
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
ChipsModule,
ButtonModule,
FormsModule,
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule {}
输出:
参考: https://primefaces.org/primeng/showcase/#/chips