2016-01-08 12 views
8

Próbuję użyć Ionic 2 i wciąż mam problemy z podstawowymi zadaniami, takimi jak wybieranie zakładki podczas wczytywania aplikacji.Wybierz konkretną zakładkę w Ionic 2

Próbowałem wstrzyknąć kontroler Tabs i zadzwonić pod numer select na wydarzenie onPageLoaded, ale na próżno.

Czy ktoś może pomóc?

+1

Trzeba zadzwonić 'select()' w konstruktorze strony, gdzie kontrola zakładki jest zdefiniowana. Niestety nie mam pod ręką przykładu, jak uzyskać odniesienie do kontroli. –

+0

Czy można to bardziej szczegółowo wyjaśnić? –

Odpowiedz

6
//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); 
    } 
} 
+0

Proszę spojrzeć na ten link https://webcake.co/page-lifecycle-hooks-in-ionic-2/ –

+0

Witamy w SO. Rozważ wyjaśnienie swojego kodu jako części odpowiedzi. –

+0

Thaks @RichardErickson, Czy to wystarczy? : p –

9

do domyślnych na karcie w jonowej 2 Zmień właściwość selectedIndex:

<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> 

zakładkę Informacje, będzie wybrana zakładka podczas wczytywania strony.

5

spróbować

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

W Ionic 3 i kątowe 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. 
Powiązane problemy