Я создаю приложение с вкладками. В ** tab2.page. html ** у меня есть 2 внутри, я оставляю свой код, чтобы лучше понять:
<ion-slides class="slidesTab2" #slidesTab2 pager="false">
<ion-slide>
---- código ----
</ion-slide>
<ion-slide>
---- código ----
</ion-slide>
</ion-slides>
--- código ---
<ion-col>
<ion-button shape="round" size="small" fill="outline" color="tertiary" (click)="goToNext()">
Next
</ion-button>
</ion-col>
<ion-button shape="round" size="small" fill="outline" color="tertiary" (click)="goToPrev()">
Prev
</ion-button>
</ion-col>
и соответствующий ему класс ** tab2.page.ts **:
@ViewChild('slidesTab2', { static: true }) slidesTab2: IonSlides;
--- código ---
goToNext() {
this.slidesTab2.lockSwipes( false );
this.slidesTab2.slideNext();
this.slidesTab2.lockSwipes( true );
}
goToPrev() {
this.slidesTab2.lockSwipes( false );
this.slidesTab2.slidePrev();
this.slidesTab2.lockSwipes( true );
}
На ** tab3.page. html ** У меня есть еще 2 внутри, я оставляю код, чтобы лучше понять:
<ion-slides class="slidesTab3" #slidesTab3 pager="false">
<ion-slide>
---- código ----
</ion-slide>
<ion-slide>
---- código ----
</ion-slide>
</ion-slides>
--- código ---
<ion-col>
<ion-button shape="round" size="small" fill="outline" color="tertiary" (click)="goToNext()">
Next
</ion-button>
</ion-col>
<ion-button shape="round" size="small" fill="outline" color="tertiary" (click)="goToPrev()">
Prev
</ion-button>
</ion-col>
и соответствующий ему класс ** tab3 .page.ts **:
@ViewChild('slidesTab3', { static: true }) slidesTab3: IonSlides;
--- código ---
goToNext() {
this.slidesTab3.lockSwipes( false );
this.slidesTab3.slideNext();
this.slidesTab3.lockSwipes( true );
}
goToPrev() {
this.slidesTab3.lockSwipes( false );
this.slidesTab3.slidePrev();
this.slidesTab3.lockSwipes( true );
}
Проблема, которая работает только на первых слайдах, которые я открываю. То есть я открываю приложение, открываю tab2 и слайды работают отлично. И если я в следующий раз открою tab3, слайды, объявленные в этом классе, не будут работать. Я попытался напечатать активный индекс с помощью ** slide.getActiveIndex (); ** на каждую функцию, но слайды, которые я открываю вторые, те, которые не работают, печатают пустыми. Как я могу исправить это, чтобы заставить работать 2 слайда? Спасибо.