Angular PrimeNG Ripple Directive
Angular PrimeNG是一个开源的前端UI库,它有许多原生的Angular UI组件,可以帮助开发人员建立一个快速和可扩展的网络解决方案。在这篇文章中,我们将看到Angular PrimeNG Ripple Directive。
波纹指令用于将波纹效果动画应用于主元素。它需要通过在app.component.ts文件中设置this.primengConfig.ripple为true来全局启用。在此之后,pRipple指令可用于元素,将波纹效果应用于该组件的元素。
语法:
<div pRipple>....</div>
创建Angular应用程序并安装模块:。
第1步:使用以下命令创建一个Angular应用程序。
ng new appname
第2步:创建你的项目文件夹即appname后,使用以下命令移动到它。
cd appname
第3步:最后,在你给定的目录中安装PrimeNG。
npm install primeng --save
npm install primeicons --save
项目结构:在完成上述步骤后,项目结构将看起来像这样。
Project Structure
运行以下命令:
ng serve --open
例子1:在这个例子中,我们在一个简单的<div>元素
上设置波纹效果。
<div class="text-center">
<h2 style="color: green">GeeksforGeeks</h2>
<h4>Angular PrimeNG Ripple Directive</h4>
<div pRipple class="mt-5 gfg">
<span>GeeksforGeeks</span>
</div>
</div>
import { Component, OnInit } from '@angular/core';
import { PrimeNGConfig } from 'primeng/api';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styles: [
`
.gfg{
display: flex;
align-items: center;
justify-content: center;
height: 150px;
width: 150px;
user-select: none;
background-color: green;
color: white;
margin: auto;
}
`
]
})
export class AppComponent implements OnInit{
constructor(private primengConfig: PrimeNGConfig) { }
ngOnInit() {
this.primengConfig.ripple = true;
}
}
import { NgModule } from '@angular/core';
import { BrowserModule }
from '@angular/platform-browser';
import { BrowserAnimationsModule }
from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { RippleModule } from 'primeng/ripple';
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
RippleModule
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule { }
输出:
例子2:在这个例子中,我们用CSS类改变了波纹的颜色。
<div class="text-center">
<h2 style="color: green">GeeksforGeeks</h2>
<h4>Angular PrimeNG Ripple Directive</h4>
<div class="flex" style="width: 500px; margin: auto;">
<div pRipple class="mt-5 gfg green">
<span>GeeksforGeeks</span>
<span>Green</span>
</div>
<div pRipple class="mt-5 gfg orange">
<span>GeeksforGeeks</span>
<span>Orange</span>
</div>
</div>
<div class="flex" style="width: 500px; margin: auto;">
<div pRipple class="mt-5 gfg pink">
<span>GeeksforGeeks</span>
<span>Pink</span>
</div>
<div pRipple class="mt-5 gfg blue">
<span>GeeksforGeeks</span>
<span>Blue</span>
</div>
</div>
</div>
import { Component, OnInit } from '@angular/core';
import { PrimeNGConfig } from 'primeng/api';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styles: [
`
.gfg{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 150px;
width: 150px;
user-select: none;
margin: auto;
}
`
]
})
export class AppComponent implements OnInit{
constructor(private primengConfig: PrimeNGConfig) { }
ngOnInit() {
this.primengConfig.ripple = true;
}
}
import { NgModule } from '@angular/core';
import { BrowserModule }
from '@angular/platform-browser';
import { BrowserAnimationsModule }
from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { RippleModule } from 'primeng/ripple';
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
RippleModule
],
declarations: [AppComponent],
bootstrap: [AppComponent],
})
export class AppModule { }
.p-ripple.green .p-ink {
background: rgba(0, 255, 0, .3);
}
.p-ripple.orange .p-ink {
background: rgba(255, 102, 0, .5);
}
.p-ripple.pink .p-ink {
background: rgba(255, 0, 221, .5);
}
.p-ripple.blue .p-ink {
background: rgba(0, 0, 255, .3);
}
输出: