IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Angular Discussion :

Communication intercomposant Angular


Sujet :

Angular

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    étudiant
    Inscrit en
    Avril 2021
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 25
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : étudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Communication intercomposant Angular
    Bonsoir ! Alors voilà, débutante en Angular je me demandais comment faire fonctionner ma sidenav située dans un component différent du bouton ou je veux activer ma sidenav.. J'ai pas mal cherché mais je n'arrive pas à voir comment je peux faire pour lier les deux composant et faire en sorte que ma sidenav s'ouvre via ce bouton.
    Voici mon code :


    Header.component.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <mat-toolbar>
      <div class="titreap">My Application</div>
      <!-- Bouton header -->
      <button mat-icon-button [matMenuTriggerFor]="menu" class="boutonHeader">
          <mat-icon>more_vert</mat-icon>
      </button>
      <mat-menu #menu="matMenu">
        <button mat-menu-item>
          <mat-icon>home</mat-icon>
          <span>Home</span>
        </button>
    
    
    //Bouton qui me sert ouvrir ma side bar
      <button mat-menu-item (click)="sidenav.toggle()">
        <mat-icon>help_outline</mat-icon>
        <span>Aide</span>
      </button>
      </mat-menu>
    </mat-toolbar>
    Header.component.ts
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    import { Component, OnInit,Input,HostListener, Output, EventEmitter } from '@angular/core';
    import { Sidebar2Component } from '../sidebar2/sidebar2.component';
     
    @Component({
      selector: 'app-header',
      templateUrl: './header.component.html',
      styleUrls: ['./header.component.css']
    })
     
    export class HeaderComponent implements OnInit {
     
      //sideBarIsOpened = false;
     
      @Output() toggle: EventEmitter<any> = new EventEmitter();
     
      constructor() { }
     
      emit() {
          this.toggle.emit(null);
      }
      ngOnInit() {
      }
     
    }
    SideBar.component.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <mat-sidenav-container class="example-container">
        <mat-sidenav #drawer class="sideBar" mode="side" opened>
            sidenav
        </mat-sidenav>
     
        <mat-sidenav-content>
        </mat-sidenav-content>
    </mat-sidenav-container>
    Si quelqu'un pourrait m'aider j'en serai très reconnaissante :/
    Merci beaucoup

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Points : 1 030
    Points
    1 030
    Par défaut
    normalement on utilise le routing avec un sidenav pour naviguer entre les pages.
    mais on peut aussi l'utiliser pour des sous pages ou des fonctionnalités de la page courante.

    voici un exemple avec routing :
    https://stackblitz.com/edit/angular-...component.html

    tu peux aller voir le magnifique tutorial de dukoid sur Angular, il y a un chapitre sur la communication entre composants :
    https://iner-dukoid.developpez.com/t...-angular/#LXIV

Discussions similaires

  1. [Débutant] Communication entre client Angular et serveur REST
    Par StringBuilder dans le forum TypeScript
    Réponses: 1
    Dernier message: 23/06/2020, 10h40
  2. Réponses: 1
    Dernier message: 22/12/2019, 17h26
  3. Réponses: 12
    Dernier message: 14/03/2018, 17h54
  4. [Angular 5] Partager un service commun à tous
    Par keokaz dans le forum Angular
    Réponses: 2
    Dernier message: 12/03/2018, 19h53
  5. Communications entre le client et le serveur avec Angular
    Par bagelius dans le forum AngularJS
    Réponses: 3
    Dernier message: 24/03/2014, 13h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo