Verwenden Sie RouterLink von einer verschachtelten Komponente

8

Verwendung von Angular 2 beta.0

Ich habe eine Komponentenstruktur wie diese

%Vor%

Dies führt zu einem Fehler: Component "List" has no route config.

Also habe ich eine RouteConfig auf die List -Komponente wie folgt gesetzt ...

%Vor%

Aber ich bekomme einen Winkelfehler wie Error: Child routes are not allowed for "/list". Use "..." on the parent's route path.

Ich habe versucht, diese 3 Punkte vor und nach dem / list-Pfad in dieser Routenkonfiguration hinzuzufügen ... ohne Erfolg.

Die Dokumentation auf dem Router ist sehr leicht und obwohl ich weiß, dass dies auf dem UI-Router basieren soll, sehe ich keine Parallele, um geschachtelte Routen hinzuzufügen

    
JackM 18.12.2015, 20:07
quelle

2 Antworten

19

Sie können es so verwenden, in der übergeordneten Komponente:

%Vor%

Und dann definieren Sie in Ihrem ListComponent Ihre untergeordneten Routen:

%Vor%

Stellen Sie sicher, dass ListComponent auch <router-outlet></router-outlet> hat ..

    
Aico Klein Ovink 29.12.2015 09:25
quelle
0

Wenn Sie versuchen, den routerLink von einer untergeordneten Komponente zu verwenden, um tatsächlich zu einer der konfigurierten Routen Ihrer Eltern zu gelangen, müssen Sie keine RouterConfig einfügen für das untergeordnete Element müssen Sie lediglich sicherstellen, dass die Route in Ihrem übergeordneten Element korrekt konfiguriert ist, und anschließend die ROUTER_DIRECTIVES -Konstante in der Direktiven-Eigenschaft Ihres Kindes innerhalb des Dekorators des untergeordneten Elements hinzufügen.

Es wird etwa so sein:

Parent:

%Vor%

Kind:

%Vor%

Vergessen Sie auch nicht, Ihren routerLink korrekt zu konfigurieren, indem Sie die Route, an die Sie den Benutzer senden möchten, als ersten Parameter des Arrays angeben und dann die Parameter hinzufügen, die Sie an den Router senden möchten Zielroute unter Verwendung des gleichen Namens, den Sie in RouteConfig angegeben haben, wie folgt:

%Vor%     
hesparza 12.08.2016 20:39
quelle

Tags und Links