📜  Angular PrimeNG TabView 组件

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

Angular PrimeNG TabView 组件

Angular PrimeNG 是一个开源框架,具有丰富的原生 Angular UI 组件集,可用于出色的样式,并且该框架用于非常轻松地制作响应式网站。在本文中,我们将了解如何在 Angular PrimeNG 中使用 TabView 组件。我们还将了解将在代码中使用的属性、事件、样式以及它们的语法。

TabView 组件: 用于以标签的形式显示内容。

TabView 的属性:

  • activeIndex:它指定活动选项卡的索引,以编程方式更改所选选项卡。它接受数字数据类型,默认值为空。
  • controlClose:用于指定在onClose事件时是否控制tab关闭。它是布尔数据类型,默认值为 false。
  • style:是组件的内联样式。它是字符串数据类型,默认值为空。
  • styleClass:组件的样式类。它是字符串数据类型,默认值为空。

TabPanel 的属性:

  • header :它指定 tabPanel 的标题。它是字符串数据类型,默认值为空。
  • selected :它定义选项卡是否处于活动状态。它是布尔数据类型,默认值为 false。
  • disabled :当它的值为 true 时,它指定选项卡不能被激活。它是布尔数据类型,默认值为 false。
  • 可关闭:它定义是否可以删除选项卡。它是布尔数据类型,默认值为 false。
  • headerStyle :它是选项卡标题的内联样式。它是字符串数据类型,默认值为空。
  • headerStyleClass :它指定选项卡标题的样式类。它是字符串数据类型,默认值为空。
  • cache :它指定延迟加载的面板是否应避免在重新选择时再次加载。它是布尔数据类型,默认值为 true。
  • tooltip :它指定在悬停时在工具提示中显示的咨询信息。它接受任何数据类型,默认值为空。
  • tooltipStyleClass :它指定工具提示的样式类。它是字符串数据类型,默认值为空。
  • tooltipPosition :指定工具提示的位置,有效值为右、左、上、下。它是字符串数据类型,默认值为顶部。
  • tooltipPositionStyle :它指定 CSS 位置的类型。它是字符串数据类型,默认值为绝对值

事件:

  • onChange:这是一个在选项卡更改时触发的回调。
  • onClose:它是在标签关闭时触发的回调。

造型:

  • p-tabview :它是容器元素
  • p-tabview-nav :它是标题的容器。
  • p-tabview-selected:被选中的标签页眉。
  • p-tabview-panels:它是容器面板。
  • p-tabview-panel:它是选项卡的内容。

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

  • 第 1 步:使用以下命令创建一个 Angular 应用程序。
ng new appname
  • 第 2 步:创建项目文件夹(即 appname)后,使用以下命令移动到该文件夹。
cd appname
  • 第 3 步:在给定目录中安装 PrimeNG。
npm install primeng --save
npm install primeicons --save

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

示例 1:这是说明如何使用 TabView 组件的基本示例。

app.component.html

GeeksforGeeks

PrimeNG TabView Component
       

Content1

  
       

Content2

  
       

Content3

  


app.component.ts
import { Component } from '@angular/core';
  
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {}


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


app.component.html

GeeksforGeeks

PrimeNG TabView Component
             

Content1

    
             

Content2

    
             

Content3

    


app.component.ts
import { Component } from '@angular/core';
  
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {}


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


app.component.ts

import { Component } from '@angular/core';
  
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {}

app.module.ts

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

输出:

示例 2:在这个示例中,我们将了解如何在 Tabview 组件中使用可关闭属性。

app.component.html

GeeksforGeeks

PrimeNG TabView Component
             

Content1

    
             

Content2

    
             

Content3

    

app.component.ts

import { Component } from '@angular/core';
  
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {}

app.module.ts

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

输出:

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