angular 所有注解(Angular实用应用1-silck)
angular 所有注解(Angular实用应用1-silck)对于不想引入过多组件的同学,可以了解下Angular中使用js相关的文章 。这边主要说明下他在Angular中的使用。该方案直接使用github上对应的组件使用。经测试他可以同时支援Angualr6 ~ Angular 11。ps.毕竟有人直接开发了,这边也就不再重复制造轱辘了~
Angular之Silck应用slick 是一个基于 jQuery 的响应触摸式幻灯片插件,支持IE8 ,Chrome Firefox and Safari,具有以下特点:
- 支持响应式
- 浏览器支持 CSS3 时,则使用 CSS3 过度/动画
- 支持移动设备滑动
- 支持桌面浏览器鼠标拖动
- 支持循环
- 支持左右控制
- 支持动态添加、删除、过滤
- 支持自动播放、圆点、箭头、回调等等
官方地址:
http://kenwheeler.github.io/slick/
他的功能之强大,使用灵活我这边就不再复述,官网或google下都有很多文章。
这边主要说明下他在Angular中的使用。
方案一:直接使用ngx-slick-carousel该方案直接使用github上对应的组件使用。经测试他可以同时支援Angualr6 ~ Angular 11。
ps.毕竟有人直接开发了,这边也就不再重复制造轱辘了~
对于不想引入过多组件的同学,可以了解下Angular中使用js相关的文章 。
Step 1:创建工程ng new slickCarouselPro
$ npm install jquery --save
$ npm install slick-carousel --save
$ npm install ngx-slick-carousel --save
Step 3 : AppModule中引入
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
// Import your library
import { SlickCarouselModule } from 'ngx-slick-carousel';
@NgModule({
declarations: [
AppComponent
]
imports: [
BrowserModule
// Specify your library as an import
SlickCarouselModule
]
providers: []
bootstrap: [AppComponent]
})
export class AppModule { }
Step 4: Angular.json 中引入
"styles": [
...
"node_modules/slick-carousel/slick/slick.scss"
"node_modules/slick-carousel/slick/slick-theme.scss"
...
]
"scripts": [
...
"node_modules/jquery/dist/jquery.min.js"
"node_modules/slick-carousel/slick/slick.min.js"
...
]
Step 5:组件开发
<!-- You can now use your library component in app.component.html -->
<ngx-slick-carousel class="carousel"
#slickModal="slick-carousel"
[config]="slideConfig"
(init)="slickInit($event)"
(breakpoint)="breakpoint($event)"
(afterChange)="afterChange($event)"
(beforeChange)="beforeChange($event)">
<div ngxSlickItem *ngFor="let slide of slides" class="slide">
<img src="{{ slide.img }}" alt="" width="100%">
</div>
</ngx-slick-carousel>
<button (click)="addSlide()">Add</button>
<button (click)="RemoveSlide()">Remove</button>
<button (click)="slickModal.slickGoTo(2)">slickGoto 2</button>
<button (click)="slickModal.unslick()">unslick</button>
@Component({
...
})
class ExampleComponent {
slides = [
{img: "http://placehold.it/350x150/000000"}
{img: "http://placehold.it/350x150/111111"}
{img: "http://placehold.it/350x150/333333"}
{img: "http://placehold.it/350x150/666666"}
];
slideConfig = {"slidesToShow": 4 "slidesToScroll": 4};
addSlide() {
this.slides.push({img: "http://placehold.it/350x150/777777"})
}
removeSlide() {
this.slides.length = this.slides.length - 1;
}
slickInit(e) {
console.log('slick initialized');
}
breakpoint(e) {
console.log('breakpoint');
}
afterChange(e) {
console.log('afterChange');
}
beforeChange(e) {
console.log('beforeChange');
}
}
Step 6: 运行