Angular PrimeNG Galleria指标

Angular PrimeNG Galleria指标

Angular PrimeNG是一个开源的Angular应用程序的UI组件库。使用Angular PrimeNG提供的组件,人们可以创建令人惊叹和响应的angular应用程序。在这篇文章中,我们将看到Angular PrimeNG Galleria Indicator。

Galleria是一个先进的组件,以吸引人的方式显示图片。它需要一个名为item的模板和一个对象数组作为值。使用galleria组件可以提高应用程序的用户体验。Galleria指示器允许用户快速浏览galleria项目。

Angular PrimeNG Galleria指标属性:

  • showIndicators:此属性用于启用/禁用指标。
  • indicatorsPosition。此属性指定了指标的位置。有4个有效值。”底部”、”顶部”、”左侧 “和 “右侧”。
  • showIndicatorsOnItem :此属性指定是否在项目的顶部显示指标。
  • changeItemOnIndicatorHover。当该选项为真时,当用户在指标上悬停时,画廊的项目将发生变化。
  • value : 此属性接受一个对象数组,以显示为galleria项目。
  • numVisible : 这个属性定义了在一个页面上显示的缩略图的数量。
  • showThumbnails :当这个选项为假时,将不显示画廊的缩略图。

Angular PrimeNG Galleria指标模板:

  • item。项目模板用于指定一个单一的项目galleria项目的结构方式。
  • indicator:该模板讲述了一个单一的指标将如何结构化。

语法:

<p-galleria [value]="img" 
            [showIndicators]="true" 
            indicatorsPosition="top">
       ...
</p-galleria>

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

  • 使用以下命令创建一个Angular应用程序。
ng new myapp
  • 创建你的项目文件夹(即myapp)后,使用以下命令移动到它。
cd myapp
  • 在你给定的目录中安装PrimeNG。
npm install primeng --save
npm install primeicons --save

项目结构:完成上述步骤后,其结构将如下所示。

Angular PrimeNG Galleria指标

Project Structure

例子1:在这个例子中,我们将showIndicators属性设置为true,默认情况下,指标将显示在内容之外,当我们点击指标时,画廊的当前项目将改变。

  • app.component.html:
<h2 style="color: green">GeeksforGeeks</h2>
<h3>Angular PrimeNG Galleria Indicators</h3>
  
<h4>
    Indicators with Click Event
    and Outside the content
</h4>
  
<p-galleria [value]="img" 
            [containerStyle]="{'max-width': '500px'}" 
            [numVisible]="3" 
            [showIndicators]="true"
            [showThumbnails]="false">
       <ng-template pTemplate="item" let-img>
              <img [src]="img.URL" 
                   style="width: 100%; 
                          display: block;" />
       </ng-template>
</p-galleria>
  • app.component.ts:
import { Component } from '@angular/core';
  
interface GalleriaImage {
    URL: String;
}
  
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
})
export class AppComponent {
    img: GalleriaImage[] = [];
  
    ngOnInit() {
        this.img = [
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235505/eximg1.gif',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg2-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg3-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235503/eximg4-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235501/eximg5-300x157.png',
            },
        ];
    }
}
  • 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 { GalleriaModule } from 'primeng/galleria';
  
@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        GalleriaModule
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent],
})
export class AppModule { }

输出:

Angular PrimeNG Galleria指标

例子2:在这个例子中,changeItemOnIndicatorHover属性被设置为true,以便当我们将鼠标悬停在指标上时,改变galleria项目,showIndicatorsOnItem属性也被设置为true,以便在内容顶部显示指标。

  • app.component.html:
<h2 style="color: green">GeeksforGeeks</h2>
<h3>Angular PrimeNG Galleria Indicators</h3>
  
<h4>
     Indicators with Hover Event
     and Inside the content
</h4>
  
<p-galleria [value]="img" 
            [containerStyle]="{'max-width': '500px'}" 
            [numVisible]="3"
            [changeItemOnIndicatorHover]="true"
            [showIndicatorsOnItem]="true" 
            [showIndicators]="true" 
            [showThumbnails]="false">
  
       <ng-template pTemplate="item" let-img>
              <img [src]="img.URL" 
                   style="width: 100%; 
                          display: block;" />
       </ng-template>
</p-galleria>
  • app.component.ts:
import { Component } from '@angular/core';
  
interface GalleriaImage {
    URL: String;
}
  
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
})
export class AppComponent {
    img: GalleriaImage[] = [];
  
    ngOnInit() {
        this.img = [
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235505/eximg1.gif',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg2-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg3-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235503/eximg4-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235501/eximg5-300x157.png',
            },
        ];
    }
}
  • 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 { GalleriaModule } from 'primeng/galleria';
  
@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        GalleriaModule
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent],
})
export class AppModule { }

输出:

Angular PrimeNG Galleria指标

例子3:在这个例子中,我们把indicatorsPosition属性设置为左边,以便在内容的左边显示指标,并使用指标模板来显示自定义指标。

  • app.component.html:
<h2 style="color: green">GeeksforGeeks</h2>
<h3>Angular PrimeNG Galleria Indicators</h3>
  
<h4>
    Indicators with Hover Event
    and on the Left of the content
</h4>
  
<p-galleria [value]="img" 
            [containerStyle]="{'max-width': '500px'}" 
            [numVisible]="3" 
            [changeItemOnIndicatorHover]="true"
            [showIndicatorsOnItem]="true" 
            [showIndicators]="true" 
            indicatorsPosition="left" 
            [showThumbnails]="false">
  
       <ng-template pTemplate="item" let-img>
              <img [src]="img.URL"
                   style="width: 100%; 
                          display: block;" />
       </ng-template>
  
       <ng-template pTemplate="indicator" let-i>
              <div style="background: white; 
                          padding: 5px; 
                          border-radius: 10px">
                     <span style="color: green; 
                                  cursor: pointer">
                            {{i + 1}}
                     </span>
              </div>
       </ng-template>
</p-galleria>
  • app.component.ts:
import { Component } from '@angular/core';
  
interface GalleriaImage {
    URL: String;
}
  
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
})
export class AppComponent {
    img: GalleriaImage[] = [];
  
    ngOnInit() {
        this.img = [
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg2-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235504/eximg3-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235503/eximg4-300x157.png',
            },
            {
                URL:
'https://media.geeksforgeeks.org/wp-content/uploads/20220927235501/eximg5-300x157.png',
            },
        ];
    }
}
  • 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 { GalleriaModule } from 'primeng/galleria';
  
@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        GalleriaModule
    ],
    declarations: [AppComponent],
    bootstrap: [AppComponent],
})
export class AppModule { }

输出:

Angular PrimeNG Galleria指标

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程