Skip to content

Instantly share code, notes, and snippets.

@DWS-paris
Created December 6, 2016 14:52
Show Gist options
  • Save DWS-paris/598eb5e88de14420337f4f02001ff27a to your computer and use it in GitHub Desktop.
Save DWS-paris/598eb5e88de14420337f4f02001ff27a to your computer and use it in GitHub Desktop.
Configuration de la navigationet du burger menu #ionic2
import { Component, ViewChild } from '@angular/core';
import { Platform, MenuController, Nav } from 'ionic-angular';
import { StatusBar, Splashscreen } from 'ionic-native';
// Import des RXJS pour gérer les promesses
import './rxjs-operators';
// Import des composants à utiliser dans le burger menu
import { AppHomepage } from '../pages/app-homepage/app.homepage';
import { AppDashboard } from '../pages/dashboard/dashboard';
import { AngularDashboard } from '../pages/angular-dashboard/angular.dashboard';
import { ListPage } from '../pages/list/list';
import { ContributorsComponent } from '../pages/contributors/contributors';
// Décorateur du composant principal de l'application
@Component({
templateUrl: 'app.html'
})
// Export de la class du composant principal
export class MyApp {
// Intégration des fonctions du composant Nav (nécessaire pour l'utilisation du burger menu)
@ViewChild(Nav) nav: Nav;
// Définition de la vue principale de l'application : AppDashboard
rootPage: any = AppHomepage;
// Définition d'un variable pour afficher la liste des vues dans le burger menu
pagesList: any;
// Création d'une fonction pour initialiser l'application
initializeApp() {
// Appel de la fonction ready() du composant Platform
this.platform.ready().then(() => {
// Définition des fonctions native à utiliser dand l'application
StatusBar.styleDefault();
Splashscreen.hide();
});
}
// Création d'un fonction permettant de gérer la passage entre les vues
openPage(page) {
// Fermeture du burger menu
this.menu.close();
// Affuchage de la vue sélectionnée
this.nav.setRoot(page.component, page);
}
// Constructeur du composant prinsipal
constructor(
// Ajout des composants Platform et MenuController pour utilier le burger menu
public platform: Platform,
public menu: MenuController,
) {
// Création de la liste des pages dans le burger menu
this.pagesList = [
{ title: 'Accueil', component: AppHomepage},
{ title: 'Supports FrontEnd', quote: 'Best coding practices', component: AppDashboard, supportId: 27 },
{ title: 'Support AngularJS', quote: 'Become a WebApp developer', component: AppDashboard, supportId: 29 },
{ title: 'Contributeurs', quote: 'Behind the app', component: ContributorsComponent }
];
// Initialisation de l'application
this.initializeApp();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment