📜  Angular PrimeNG 侧边栏组件

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

Angular PrimeNG 侧边栏组件

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

侧边栏组件: It 用于制作覆盖在屏幕边缘的元素。

特性:

  • 可见:它指定对话框的可见性。它是布尔数据类型,默认值为false。
  • position:指定侧边栏的位置,有效值为“left”、“right”、“bottom”和“top”。它是字符串数据类型,保留默认值。
  • fullScreen:用于在标题中添加关闭图标以隐藏对话框。它是布尔数据类型,默认值为 false。
  • appendTo:附加对话框的目标元素,有效值为“body”或另一个元素的本地 ng-template 变量。它接受任何类型的数据,默认值为空。
  • style:用于设置组件的内联样式。它是字符串数据类型,默认值为空。
  • styleClass:用于设置组件的样式类。它是字符串数据类型,默认值为空。
  • blockScroll:用于指定当侧边栏处于活动状态时是否阻止文档滚动。它是布尔数据类型,默认值为 false。
  • baseZIndex:用于设置分层时使用的基本 zIndex 值。它是数字数据类型,默认值为 0。
  • autoZIndex:用于指定是否自动管理分层。它是布尔数据类型,默认值为true。
  • modal:用于指定是否在侧边栏后面显示覆盖掩码。它是布尔数据类型,默认值为true。
  • dismissible:用于指定是否在单击掩码时关闭侧边栏。它是布尔数据类型,默认值为true。
  • showCloseIcon:用于指定是否显示关闭图标。它是布尔数据类型,默认值为真。
  • transitionOptions:用于设置动画的过渡选项。它是字符串数据类型,默认值为 150ms 三次贝塞尔曲线(0, 0, 0.2, 1)。
  • ariaCloseLabel:用于设置关闭图标的 aria-label。它是字符串数据类型,默认值为 close。
  • closeOnEscape:用于指定按退出键是否应隐藏侧边栏。它是布尔数据类型,默认值为true。

事件:

  • onShow:这是一个在显示对话框时触发的回调。
  • onHide:这是一个在对话框被隐藏时触发的回调。

造型:

  • p-sidebar:它是容器元素
  • p-sidebar-left:左侧边栏的容器元素。
  • p-sidebar-right:右侧边栏的容器元素。
  • p-sidebar-top:顶部侧边栏的容器元素。
  • p-sidebar-bottom:底部侧边栏的容器元素。
  • p-sidebar-full:它是全屏侧边栏的容器元素。
  • p-sidebar-active:侧边栏可见时的容器元素。
  • p-sidebar-close :它是关闭锚元素。
  • p-sidebar-sm :它是一个小型侧边栏。
  • p-sidebar-md :中型侧边栏。
  • p-sidebar-lg :它是一个大尺寸的侧边栏。
  • p-sidebar-mask :侧边栏的模态层。

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

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

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

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

app.component.html

  

GeeksforGeeks

    

Angular PrimeNG Sidebar Component

              


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 { ButtonModule } from "primeng/button";
import { SidebarModule } from "primeng/sidebar";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SidebarModule,
    ButtonModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}


app.component.html

  

GeeksforGeeks

       

Angular PrimeNG Sidebar Component

              


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 { ButtonModule } from "primeng/button";
import { SidebarModule } from "primeng/sidebar";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SidebarModule,
    ButtonModule,
  ],
  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 { ButtonModule } from "primeng/button";
import { SidebarModule } from "primeng/sidebar";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SidebarModule,
    ButtonModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

示例 2:在这个示例中,我们将了解如何在 Sidebar 组件中使用position属性。  

app.component.html


  

GeeksforGeeks

       

Angular PrimeNG Sidebar Component

              

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 { ButtonModule } from "primeng/button";
import { SidebarModule } from "primeng/sidebar";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    SidebarModule,
    ButtonModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

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