如何获得离子载玻片的实例

时间:2016-08-06 07:57:36

标签: angular ionic2

我正在使用Ionic 2 ion-slides,并希望在其上调用一些实例方法。我有以下标记:

<ion-content padding>
  <ion-slides (ionDidChange)="onSlideChanged($event)" id="loopSlider">
   <ion-slide *ngFor="let slide of slides">
    <h1>{{ slide.title }}</h1>
  </ion-slide>
</ion-slides>
</ion-content>

我尝试使用以下代码(可能已过时)中的代码:

 private gotoSlide(index: number): void {
   this.sliderComponent = this.app.getComponent('loopSlider');
   this.sliderComponent.slider.slideTo(index);
  }

this.app.getComponent('loopSlider');始终返回null

有谁知道如何获取组件实例以便我可以使用它的API?

2 个答案:

答案 0 :(得分:8)

the Ionic documentation,您可以使用@ViewChild执行此操作:

import { Component, ViewChild } from '@angular/core';
import { Slides } from 'ionic-angular';
...

@Component({
  ...
})
class MyPage {
  @ViewChild('loopSlider') sliderComponent: Slides;

  ...
}

答案 1 :(得分:1)

现在,Ionic4已经推出了一段时间,为此,更新这样的答案可能是省事的。

import { IonSlides } from '@ionic/angular';

export class...
@ViewChild(IonSlides) productSlider: IonSlides;