Wie kann ich eine Standardroute in meiner @ Route-Routenmetadatensammlung festlegen? Wenn Sie den Angular2-Router von @ angle / router-veraltet verwenden, definieren Sie die Routen im @ routeConfig-Objekt, einer Sammlung von Routenobjekten, aber diese Routenobjekte haben mehr Attribute. Zum Beispiel haben sie die Attribute 'name' und 'useAsDefualt', während die aus @ angle / router definierten Routen dies nicht tun. Ich möchte meine neue App mit dem neuen Router schreiben, aber wie verwende ich den neuen Router und lege eine Standardroute fest?
Dies ist meine Haupt-App-Komponente, die meine Routen definiert:
import { Component } from '@angular/core';
import { DashboardComponent } from './dashboard/dashboard.component';
import { ConfigManagerComponent } from './configManager/configManager.component';
import { ApplicationMgmtComponent } from './applicationMgmt/applicationMgmt.component';
import { MergeComponent } from './merge/merge.component';
import { ROUTER_DIRECTIVES, Routes } from '@angular/router';
@Component({
selector: 'app-container',
templateUrl: 'app/app.component.html',
directives: [ROUTER_DIRECTIVES]
})
@Routes([
{ path: '/Dashboard', component: DashboardComponent },
{ path: '/ConfigManager', component: ConfigManagerComponent },
{ path: '/Merge', component: MergeComponent },
{ path: '/ApplicationManagement', component: ApplicationMgmtComponent }
])
export class AppComponent { }
Die Routendefinitionen scheinen gut zu funktionieren, wenn ich auf Ankertags wie diesen klicke:
<li class="nav hidden-xs"><a [routerLink]="['./Dashboard']">Dashboard</a>/li>
Es wechselt zur zugehörigen Route. Mein einziges Problem ist, dass beim Laden meiner App keine Route aktiv ist. Wie definiere ich eine Standardroute, die beim Booten meiner App aktiv ist?
Vielen Dank!
Router
einer Variablen oder einem Parameter einen Typ hinzufügen , müssen Sie ihn importieren.window.location.hash = ''
vorherige Navigation aufgerufen wird, wird überhaupt nicht navigiert (DefaultStrategy).Sie legen den Routenpfad auf ''. Beispiel für DashboardComponent ist das Laden zuerst.
Hoffe es hilft dir.
quelle
DashboardComponent
URL
/dashboard
In Angular 2+ können Sie die Route auf die Standardseite setzen, indem Sie diese Route Ihrem Routenmodul hinzufügen. In diesem Fall ist die Anmeldung meine Zielroute für die Standardseite.
quelle
Ich sah mich dem gleichen Problem gegenüber, alle möglichen Lösungen anzuwenden, aber schließlich löste dies mein Problem
Hoffe das wird dir helfen.
quelle
Mit der aktuellen Version von Winkel 2 können Sie weder '/' für einen Pfad verwenden noch Ihrer Route einen Namen geben. Sie können eine Routendatei wie "app.routes.ts" erstellen und Ihre Komponenten importieren. Achten Sie beim Importieren auf den Pfad.
Hinzufügen:
Dann deine Routen:
Dann exportieren:
Importieren
APP_ROUTER_PROVIDERS
und fügen Sie in Ihrem main.ts Bootstrap die Router-Anbieter wie folgt zu main.ts hinzu:Schließlich sieht Ihr Link folgendermaßen aus:
quelle
Sie müssen nur andere Parameter zu Ihrer Route hinzufügen. Der Parameter lautet useAsDefault: true. Wenn Sie beispielsweise die DashboardComponent als Standard verwenden möchten, müssen Sie Folgendes tun:
Ich empfehle Ihnen, Ihren Routen Namen hinzuzufügen.
quelle
Der Pfad sollte leer bleiben, damit er zur Standardkomponente wird.
quelle
Angenommen, Sie möchten RegistrationComponent beim Laden und dann ConfirmationComponent bei einem Ereignis laden und auf RegistrationComponent klicken .
Also
appModule.ts
, können Sie so schreiben.ODER
ist auch gut. Wählen Sie, was Sie möchten.
quelle
laut dokumentation solltest du nur
auf Ihrer app-routing.module.ts-Quelle: https://angular.io/guide/router
quelle
Ich hatte gerade das gleiche Problem, ich habe es geschafft, es auf meinem Computer zum Laufen zu bringen, aber die Änderung, die ich vorgenommen habe, ist nicht die gleiche, wie sie in der Dokumentation erwähnt wird, so dass es sich möglicherweise um ein Problem mit dem Routing-Modul für Winkelversionen handelt. Meins ist Angular 7
Es hat nur funktioniert, wenn ich den Hauptrouteneintragspfad des Lazy Moduls mit demselben Pfad geändert habe, der in der app-route.ts konfiguriert wurde
quelle