Angular PrimeNG树属性

Angular PrimeNG树属性

Angular PrimeNG是一个开源的框架,有丰富的原生Angular UI组件,用来做很好的造型,这个框架用来做响应式的网站非常容易。它提供了大量的模板、组件、主题设计、广泛的图标库等等。在这篇文章中,我们将学习Angular PrimeNG树属性。

Angular PrimeNG Tree用于将分层数据显示为一棵树。这些属性被用来对树进行不同的操作,这样我们就可以相应地显示数据。

  • value(array)。它是一个treenodes的数组。
  • selectionMode(string)。它定义了选择模式,有效值为单一、多个和复选框。
  • selection(any)。它是一个单一的treenode实例或一个数组来指代选择。
  • style(字符串)。它是组件的内联风格。
  • styleClass(string)。它是组件的风格类。
  • contextMenu(上下文菜单)。它是上下文菜单的实例。
  • layout(string)。它定义了树的方向,有效值是垂直和水平。默认值是垂直。
  • draggableScope(string/array)。它是可拖动节点的范围,以匹配dropppableScope。
  • droppableScope(string/array)。是指dropppable节点的范围,以匹配dragableScope。
  • draggableNodes(boolean)。它检查节点是否可以拖动。默认值为false。
  • droppableNodes(boolean)。它检查节点是否是可放弃的。默认值是false。
  • metaKeySelection(boolean)。它定义了如何选择多个项目,当为真时,需要按metaKey来选择或取消选择一个项目,当设置为假选择时,每个项目可以单独切换。默认值是true。
  • propagateSelectionUp(boolean)。它检查复选框的选择是否会传播到祖先节点。默认值为true。
  • propagateSelectionDown(boolean)。它检查复选框的选择是否传播到子代节点。默认值为true。
  • loading(boolean)。它显示一个加载器,表示数据加载正在进行中。默认值为false。
  • loadingIcon(string)。它显示加载器,同时表示数据加载正在进行中。默认值是pi pi-spinner。
  • emptyMessage(string)。当没有数据时,它显示没有找到记录的文本。
  • ariaLabel(string)。它用于定义一个给树贴标签的字符串。
  • ariaLabelledBy(字符串)。它建立了组件和标签之间的关系,其值应该是一个或多个元素ID。
  • togglerAriaLabel(string)。它定义了一个字符串,用于标记toggler图标的可访问性。
  • validateDrop(boolean)。如果设置为true,可以根据onNodeDrop定义的条件接受或拒绝掉落。默认值是false。
  • filter(boolean)。如果设置为true,显示一个输入字段来过滤项目。默认值是false。
  • filterBy(string)。它决定哪一个或哪几个字段进行搜索。
  • filterMode(string)。它是过滤有效值的模式,即宽松和严格。默认是宽松的。
  • filterPlaceholder(string)。这是过滤器输入为空时要显示的占位符文本。
  • filterLocale(string)。它是在过滤中使用的locale。默认的locale是主机环境的当前locale。
  • scrollHeight(string)。它是可滚动视窗的高度。
  • virtualScroll(boolean)。如果设置为 “true”,数据应该在滚动过程中按需加载。默认值是false。
  • virtualScrollItemSize(number)。它为VirtualScrolling设置列表中的一个项目的高度。
  • virtualScrollOptions(ScrollerOptions)。它设置了滚动器的功能
  • trackBy(Function)。它设置了优化节点列表渲染的函数。

语法:要使用任何属性,请使用以下语法。

<p-tree [value]="files1"
    selectionMode="checkbox">
</p-tree>

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

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

ng new geeks_angular

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

cd geeks_angular

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

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

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

Angular PrimeNG树属性

运行应用程序的步骤:编写以下命令来运行该应用程序。

ng serve --open

例子1:在下面的例子中,我们有简单的TreeNodes,并启用了checkbox。

app.component.html

<h1 style="color:green;text-align:center;">
    GeeksforGeeks
</h1>
<h3>Angular PrimeNG Tree Properties</h3>
<p-tree [value]="files1" 
        selectionMode="checkbox">
</p-tree>

app.component.ts

import { Component } from '@angular/core';
import { TreeNode } from 'primeng/api';
  
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.css'],
})
export class AppComponent {
    files1: TreeNode[] = [];
  
    files2: TreeNode[] = [];
  
    ngOnInit() {
        this.files1 = [
            {
                label: 'Data Structures',
                icon: 'pi pi-folder',
  
                children: [
                    {
                        label: 'List',
                        icon: 'pi pi-folder',
  
                        children: [
                            {
                                label: 'Singly List',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Doubly List',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Circularly List',
                                icon: 'pi pi-code',
                            },
                        ],
                    },
                    {
                        label: 'Queue',
                        icon: 'pi pi-folder',
  
                        children: [
                            {
                                label: 'Simple Queue',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Doubly ended Queue',
                                icon: 'pi pi-code',
                            },
                        ],
                    },
                ],
            },
            {
                label: 'Algorithms',
                icon: 'pi pi-folder',
  
                children: [
                    {
                        label: 'Greedy ',
                        icon: 'pi pi-code',
                    },
                    {
                        label: 'BFS ',
                        icon: 'pi pi-code',
                    },
                    {
                        label: 'Dynamic Programming',
                        icon: 'pi pi-code',
                    },
                ],
            },
        ];
        this.files2 = this.files1;
    }
}

app.module.ts

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from
    '@angular/platform-browser/animations';
import { RouterModule } from '@angular/router';
import { AppComponent } from './app.component';
  
import { FormsModule } from '@angular/forms';
import { TreeModule } from 'primeng/tree';
import { ButtonModule } from 'primeng/button';
  
@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        TreeModule,
        ButtonModule,
        HttpClientModule,
        FormsModule,
        RouterModule.forRoot([{ path: '', component: AppComponent }]),
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent],
})
export class AppModule { }

输出:

Angular PrimeNG树属性

例2:在下面的例子中,我们启用了。过滤模式。

app.component.html

<h1 style="color:green;text-align:center;">
    GeeksforGeeks
</h1>
<h3>Angular PrimeNG Tree Properties</h3>
<p-tree [value]="files1" 
        filter="true">
</p-tree>

app.component.ts

import { Component } from '@angular/core';
import { TreeNode } from 'primeng/api';
  
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.css'],
})
export class AppComponent {
    files1: TreeNode[] = [];
  
    files2: TreeNode[] = [];
  
    ngOnInit() {
        this.files1 = [
            {
                label: 'Data Structures',
                icon: 'pi pi-folder',
  
                children: [
                    {
                        label: 'List',
                        icon: 'pi pi-folder',
  
                        children: [
                            {
                                label: 'Singly List',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Doubly List',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Circularly List',
                                icon: 'pi pi-code',
                            },
                        ],
                    },
                    {
                        label: 'Queue',
                        icon: 'pi pi-folder',
  
                        children: [
                            {
                                label: 'Simple Queue',
                                icon: 'pi pi-code',
                            },
                            {
                                label: 'Doubly ended Queue',
                                icon: 'pi pi-code',
                            },
                        ],
                    },
                ],
            },
            {
                label: 'Algorithms',
                icon: 'pi pi-folder',
  
                children: [
                    {
                        label: 'Greedy ',
                        icon: 'pi pi-code',
                    },
                    {
                        label: 'BFS ',
                        icon: 'pi pi-code',
                    },
                    {
                        label: 'Dynamic Programming',
                        icon: 'pi pi-code',
                    },
                ],
            },
        ];
        this.files2 = this.files1;
    }
}

app.module.ts

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { RouterModule } from '@angular/router';
import { AppComponent } from './app.component';
  
import { FormsModule } from '@angular/forms';
import { TreeModule } from 'primeng/tree';
import { ButtonModule } from 'primeng/button';
  
@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        TreeModule,
        ButtonModule,
        HttpClientModule,
        FormsModule,
        RouterModule.forRoot([{ path: '', component: AppComponent }]),
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent],
})
export class AppModule { }

输出:

Angular PrimeNG树属性

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程