Angular PrimeNG DataView组件

Angular PrimeNG DataView组件

Angular PrimeNG是一个开源框架,它拥有丰富的原生Angular UI组件,这些组件被用来做很好的造型,这个框架被用来做响应式网站,非常容易。在这篇文章中,我们将了解如何在Angular PrimeNG中使用dataView组件。我们还将学习属性、事件和造型,以及代码中使用的语法。

dataView组件。它用于在网格和列表布局中显示数据,具有分页和排序功能。

属性:

  • value : 它是一个要显示的对象的数组。它是数组的数据类型,默认值为空。
  • layout :它是项目的布局,有效值是 “列表 “和 “网格”。它是字符串数据类型,默认值是一个列表。
  • paginator : 如果指定为true,它显示分页。它是布尔数据类型,默认值是false。
  • rows :它表示每页要显示的行数。它是数字数据类型,默认值为空。
  • totalRecords : 表示总记录数,未定义时默认为值的长度。它是数字数据类型,默认值为空。
  • pageLinks : 它表示在分页器中显示的页面链接的数量。它是数字数据类型,默认值是5。
  • rowsPerPageOptions :它表示一个整数/对象值的数组,用于显示在分页器的每页行数下拉菜单中。它是数组数据类型,默认值为空。
  • paginatorPosition : 它是分页器的位置,选项是 “顶部”、”底部 “或 “两者”。它是字符串数据类型。它是字符串数据类型,默认值是底部。
  • alwaysShowPaginator : 它指定是否在只有一个页面的情况下显示它。它是布尔数据类型,默认值为真。
  • showFirstLastIcon : 它指定在分页器上显示第一页和最后一页的图标。它是布尔数据类型,默认值为true。
  • paginatorDropdownAppendTo : 它是连接分页器下拉覆盖的目标元素。它接受任何数据类型,默认值为空。
  • paginatorDropdownScrollHeight : 它是视口的分页器下拉高度,单位是像素。它是字符串数据类型,默认值是200px。
  • showCurrentPageReport : 它指定是否显示当前页面的报告。它是布尔数据类型,默认值是false。
  • showJumpToPageDropdown : 它指定是否显示一个下拉菜单以导航到任何页面。它是布尔数据类型,默认值是false。
  • showPageLinks : 它指定是否显示页面链接。它是布尔数据类型,默认值为true。
  • lazy : 它指定了数据是否以懒惰的方式被加载和交互。它是布尔数据类型,默认值为false。
  • emptyMessage : 当没有数据时显示的文本,它是字符串数据类型。
  • style : 它是组件的内联风格。它是字符串数据类型,默认值为空。
  • styleClass : 它是组件的风格类。它是字符串数据类型,默认值为空。
  • trackBy :它是通过委托给ngForTrackBy来优化dom操作的函数,默认算法是检查对象身份。它属于函数数据类型,默认值为null。
  • filterBy :它是以逗号分隔的对象图中的字段列表,用于搜索。它是字符串数据类型,默认值为空。
  • filterLocale : 它是在过滤中使用的语言环境。它是字符串数据类型,默认值为未定义。
  • loading : 它是一个加载器的显示,表示数据加载正在进行中。它是布尔数据类型,默认值是false。
  • loadingIcon : 它是在显示数据加载过程中的图标。它是字符串数据类型,默认值是pi pi-spinner。
  • first : 它是要显示的第一行的索引,它是数字数据类型,默认值是0。

Events:

  • onLazyLoad : 这是一个回调,当分页、排序或过滤在懒惰模式下发生时,它被触发。
  • onPage : 它是一个回调,当分页发生时被触发。
  • onSort : 它是一个回调,当排序发生时被触发。
  • onChangeLayout :它是一个回调,在改变布局时被触发。

Styling:

  • p-dataview。它是一个风格化的容器元素。
  • p-dataview-list。它是列表布局中的一个风格化的容器元素。
  • p-dataview-grid。它是网格布局中的一个风格化的容器元素。
  • p-dataview-header。它是一个风格化的标题部分。
  • p-dataview-footer。它是一个风格化的页脚部分。
  • p-dataview-content。它是一个项目的风格化容器。
  • p-dataview-emptymessage。它是一个风格化的空信息元素。

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

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

ng new appname

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

cd appname

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

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

项目结构:它将看起来像如下。

Angular PrimeNG DataView组件

例子1:这是一个基本的例子,展示了如何使用dataView组件。

<div class="card">
  <p-dataView
    #dv
    [value]="productNames"
    [paginator]="true"
    [rows]="3"
    filterBy="name"
    layout="grid">
    <ng-template let-product pTemplate="gridItem">
      <div class="p-col-12 p-md-4">
        <div class="product-grid-item card">
          <div class="product-grid-item-top">
            <h1>GeeksforGeeks</h1>
          </div>
          <div class="product-grid-item-content">
            DataView Component Item
          </div>
        </div>
      </div>
    </ng-template>
  </p-dataView>
</div>
import { Component } from "@angular/core";
import { ProductService } from "./productservice";
import { Product } from "./product";
import { SelectItem } from "primeng/api";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "app-root",
  templateUrl: "./app.component.html",
  styleUrls: ["./app.component.css"],
})
export class AppComponent {
  productNames: string[] = [
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
    "GeeksforGeeks",
  ];
  
  ngOnInit() {}
}
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 { DataViewModule } from "primeng/dataview";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    DataViewModule,
    HttpClientModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

Angular PrimeNG DataView组件

例子2:在这个例子中,我们将在dataView组件中使用搜索选项,并使用不同的dataView布局。

<div class="card">
  <p-dataView
    #dv
    [value]="productNames"
    [paginator]="true"
    [rows]="9"
    filterBy="name"
    [sortField]="sortField"
    [sortOrder]="sortOrder"
    layout="grid">
    <ng-template pTemplate="header">
      <div>
        <span class="p-input-icon-left p-mb-2 p-mb-md-0">
          <i class="pi pi-search"></i>
          <input
            type="search"
            pInputText
            placeholder="Search"
            (input)="dv.filter($event.target.value)"/>
        </span>
        <p-dataViewLayoutOptions>
          Options
        </p-dataViewLayoutOptions>
      </div>
    </ng-template>
    <ng-template let-product pTemplate="gridItem">
      <div class="p-col-12 p-md-4">
        <div class="product-grid-item card">
          <div class="product-grid-item-top">
            <h1>{{product}}</h1>
          </div>
          <div class="product-grid-item-content">
            Text Here
          </div>
        </div>
      </div>
    </ng-template>
  </p-dataView>
</div>
import { Component } from "@angular/core";
import { ProductService } from "./productservice";
import { Product } from "./product";
import { SelectItem } from "primeng/api";
import { PrimeNGConfig } from "primeng/api";
  
@Component({
  selector: "app-root",
  templateUrl: "./app.component.html",
  styleUrls: ["./app.component.css"],
})
export class AppComponent {
  productNames: string[] = [
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
    "Heading",
  ];
  
  ngOnInit() {}
}
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 { DataViewModule } from "primeng/dataview";
  
@NgModule({
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    DataViewModule,
    HttpClientModule,
    FormsModule,
  ],
  declarations: [AppComponent],
  bootstrap: [AppComponent],
})
export class AppModule {}

输出:

Angular PrimeNG DataView组件

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程