9
votes

Sélectionnez un onglet spécifique dans ionique 2

Je suis en train d'utiliser le Ionic 2 et je suis toujours aux prises avec la plupart des tâches de base, par exemple sélectionner un onglet lorsque l'application est en cours de chargement.

J'ai essayé d'injecter Tabs contrôleur et appel sélectionnez sur le onPageLoaded , mais en vain.

Quelqu'un peut-il aider peut-être?


2 commentaires

Vous devez appeler SELECT () dans constructeur d'une page où le contrôle des onglets est défini. Malheureusement, je n'ai pas d'exemple sur la manière de faire référence au contrôle.


Peut élaborer sur cet un peu plus s'il vous plaît?


4 Réponses :


6
votes
//importing tabs for manipuling our ion-tabs
import {Tabs} from 'ionic-angular';
@Page({
    templateUrl: 'build/pages/page1/page1.html'
})
export class Page1 
{
    //provide Angular with metadata about things it should inject in the constructor
    static get parameters()
    {
        return [[Tabs]];
    }
    //after injecting ,passing an instance of [Tabs] in the page constructor 
    constructor(tab) {
        this.tab = tab;   
    }
    //"onPageWillEnter" function fires every time a page becomes the active      view.
    onPageWillEnter()
    {
        //make the second tab selected From the first tab (within the current Page 'page1')
        // 1 IS the index of the target tab
        this.tab.select(1);
    }
}

5 commentaires

Veuillez jeter un oeil sur ce lien webcake.co/page-lifecycle-hooks- in-ionique-2


Bienvenue sur SO. S'il vous plaît pensez à expliquer votre code dans le cadre de votre réponse.


Merci @RichardErickson, Est-ce assez expliqué? : p


@soufienkarray des idées Comment désélectionner tous les onglets?


Avez-vous une idée de la manière de faire cela sur la page AppComponent? Il ne semble pas avoir de référence à l'objet Tabs



9
votes

Pour par défaut sur un onglet Ionic 2 Modifier la propriété sélectionnéeIndex:

<ion-tabs [selectedIndex]="1">
      <ion-tab [root]="tab1Root" tabTitle="Home" tabIcon="rewind"></ion-tab> <!-- Index 0-->
      <ion-tab [root]="tab2Root" tabTitle="About" tabIcon="md-time"></ion-tab><!-- Index 1 (Selected)-->
      <ion-tab [root]="tab3Root" tabTitle="Contacts" tabIcon="fastforward"></ion-tab><!-- Index 2-->
</ion-tabs>


0 commentaires

6
votes

essayer

var t: Tabs = this.nav.parent;
t.select(index);


0 commentaires

2
votes

dans Ionic 3 et angulaire 4.

import { Tabs } from 'ionic-angular/navigation/nav-interfaces';
@ViewChild('myTabs') tabRef: Tabs; - With in the class about constructor.
this.tabRef.select(0, {}); // In the method where you want set tab.


0 commentaires