如何访问 Swiper Angular 组件的虚拟幻灯片方法
How to access Virtual Slides Methods of Swiper Angular Component
我想访问 virtual slides methods of Swiper Angular Component。我需要在幻灯片更改后手动触发组件重新渲染。我想我可以通过调用 mySwiper.virtual.update()
方法来实现这一点。我试图通过@ViewChild装饰器
获得访问权限
@ViewChild('swiper') swiper: Swiper;
ngAfterViewInit(){
// to see which properties are available
console.dir(this.swiper);}
但 this.swiper 未定义。
参考此文档Swiper Angular
创建对您的滑动器的引用并且您必须在 AfterViewInit 上实例化滑动器 - your.component.ts
@ViewChild('newSwiper') newSwiper: any;
constructor() {
}
ngOnInit(): void {
}
ngAfterViewInit(): void {
console.log(this.newSwiper.swiperRef);
//Swiper instance will be displayed in console
}
在您的 HTML 文件中,执行以下操作
<swiper [slidesPerView]="1" #newSwiper>
//slides here
</swiper>
现在您可以访问 slideTo()、slideNext()、slidePrev() 等属性和方法
this.newSwiper.swiperRef.virtual.update()
希望这会有所帮助。
这是一个例子:
import { Component, ViewChild, AfterViewInit } from "@angular/core";
import { SwiperComponent } from "swiper/angular";
@Component({
selector: "app-swiper-example",
template: `
<swiper #swiperRef>
<ng-template swiperSlide>slide 1</ng-template>
<ng-template swiperSlide>slide 2</ng-template>
</swiper>
`
})
export class AppComponent implements AfterViewInit {
@ViewChild("swiperRef", { static: false }) swiperRef: SwiperComponent;
ngAfterViewInit(): void {
console.dir(this.swiperRef);
}
}
我想访问 virtual slides methods of Swiper Angular Component。我需要在幻灯片更改后手动触发组件重新渲染。我想我可以通过调用 mySwiper.virtual.update()
方法来实现这一点。我试图通过@ViewChild装饰器
@ViewChild('swiper') swiper: Swiper;
ngAfterViewInit(){
// to see which properties are available
console.dir(this.swiper);}
但 this.swiper 未定义。
参考此文档Swiper Angular
创建对您的滑动器的引用并且您必须在 AfterViewInit 上实例化滑动器 - your.component.ts
@ViewChild('newSwiper') newSwiper: any;
constructor() {
}
ngOnInit(): void {
}
ngAfterViewInit(): void {
console.log(this.newSwiper.swiperRef);
//Swiper instance will be displayed in console
}
在您的 HTML 文件中,执行以下操作
<swiper [slidesPerView]="1" #newSwiper>
//slides here
</swiper>
现在您可以访问 slideTo()、slideNext()、slidePrev() 等属性和方法
this.newSwiper.swiperRef.virtual.update()
希望这会有所帮助。
这是一个例子:
import { Component, ViewChild, AfterViewInit } from "@angular/core";
import { SwiperComponent } from "swiper/angular";
@Component({
selector: "app-swiper-example",
template: `
<swiper #swiperRef>
<ng-template swiperSlide>slide 1</ng-template>
<ng-template swiperSlide>slide 2</ng-template>
</swiper>
`
})
export class AppComponent implements AfterViewInit {
@ViewChild("swiperRef", { static: false }) swiperRef: SwiperComponent;
ngAfterViewInit(): void {
console.dir(this.swiperRef);
}
}