2016-09-01 1 views
1

Mon composant principal possède un bouton Précédent qui n'est pas toujours visible (selon le composant enfant). Comment le faire fonctionner? J'ai essayé d'utiliser la variable locale, sans chance.Variable locale via le routeur

Dans mon app.component.html (parent) Je donne les résultats suivants

<button *ngIf="child.goBackUrl">Back</button> 
<router-outlet #child></router-outlet> 

Dans ChildComponent J'ai

goBackUrl: string = "test"; 

Cela ne fonctionne pas. J'ai besoin d'un moyen, où je peux accéder aux variables enfants et aux méthodes du composant parent. Si j'essaie d'appeler la méthode du parent qui est dans le composant enfant, j'obtiens

ORIGINAL EXCEPTION: TypeError: self._el_102.goBack is not a function

Des idées? J'ai essayé quelques choses différentes, mais pas de chance

+0

Quel est le parent, quel est l'enfant? S'il vous plaît poster plus de code. Vous ne pouvez pas utiliser la liaison avec les composants ajoutés par le routeur (vous ne savez pas si c'est ce que vous voulez). –

+0

Mais c'est exactement ce dont j'ai besoin, la liaison avec les composants ajoutés par le routeur. Ou un autre moyen pour AppComponent (composant principal) d'accéder aux composants enfants (ajouté par le routeur). –

+0

Vous ne pouvez pas utiliser 'window.history.back()'? –

Répondre