2017-10-10 3 views
2

Je reçois une erreur TypeScript dans mon application Ionic. J'ai une application sidemenu, et séparait le menu dans son propre composant afin que je puisse ajouter une page de connexion plus facilement. Je suis ce guide pour le faire: http://roblouie.com/article/344/ionic-2-hide-menu-or-tabs-for-login-screen/Nouveau dans Ionic: erreur typographique dans App.Component.Ts

Dans mes nouvelles app.component.ts je le code suivant:

import { Component, ViewChild } from '@angular/core'; 
import { Nav, Platform } from 'ionic-angular'; 
import { StatusBar } from '@ionic-native/status-bar'; 
import { SplashScreen } from '@ionic-native/splash-screen'; 

import { MenuComponent } from "./menu.component"; 

@Component({ 
    template: '<ion-nav #baseNav></ion-nav>' 
}) 
export class MyApp { 
    @ViewChild('baseNav') nav: Nav; 

    constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen) { 
    this.initializeApp(); 
    } 

    ngOnInit() { 
    this.nav.push(MenuComponent, { animate: false }); 
    } 

    initializeApp() { 
    this.platform.ready().then(() => { 
     // Okay, so the platform is ready and our plugins are available. 
     // Here you can do any higher level native things you might need. 
     StatusBar.styleDefault(); 
     SplashScreen.hide(); 
    }); 
    } 
} 

Je suis assez nouveau avec ionique et je suis la plupart du temps suivant les guides de Commencer. Tout conseil à ce sujet serait grandement apprécié. Voici le message d'erreur que je reçois:

Error Message

enter image description here

Répondre

3

Utilisez les instances qui injectent angulaire dans le constructeur (DI) au lieu des méthodes statiques de la StatusBar et les SplashScreen classes, comme le montre ci-dessous:

initializeApp() { 
    this.platform.ready().then(() => { 
     this.statusBar.styleDefault(); 
     this.splashScreen.hide(); 
    }); 
}