Winkel-5 router.navigieren funktioniert nicht
Ich versuche die Umleitung eines Benutzers zu einer anderen Seite, basierend auf einer Bedingung.
Hier mein Beispiel-login-Komponente:
ngOnInit() {
console.log(">>> router", this.router)
console.log(">>> activatedRoute", this.activatedRoute)
if (this.activatedRoute.queryParams['value'].param === 'value') {
console.log(">>> redirecting")
this.router.navigate(['home']);
}
}
Wenn ich navigieren Sie zu der login-Komponente, ohne parameter, dann bin ich angezeigt, der login-Komponente Vorlage, das ist gut.
Jedoch wenn ich navigieren Sie zu der login-Komponente mit einem parameter namens param und value der Wert, dann will ich leiten den Benutzer auf die Startseite. Das ist nicht arbeiten.
Hier ist meine Homepage Weg:
import { NgModule } from '@angular/core';
import { HomeComponent } from './home.component';
import { RouterModule, Routes } from '@angular/router';
const thisRoute: Routes = [
{
path: 'home',
component: HomeComponent
}
];
@NgModule({
imports: [
RouterModule.forRoot(thisRoute, {
useHash: true, initialNavigation: false
})
],
declarations: [
HomeComponent
]
})
export class HomeModule { }
Habe ich ein test-Projekt in github zum download und auf Ihrem computer ausführen. Laden Sie einfach dieses Projekt: https://github.com/wvary/route-test
Laufen npm install
.
Führen npm run start
.
Navigieren Sie zu http://localhost:8080/#/home
Sollten Sie etwas wie:
Können Sie sehen, den Inhalt jeder Seite durch Klick auf die drei links.
Die Idee ist, auf der Startseite, wenn Sie auf den mittleren link.
Dank
- Versuchen Sie zu faul, laden der Heimat-Komponente?
- Nicht meine Absicht, aber wenn es das ist, was es tut, und der Grund, warum es nicht funktioniert, dann kann ich den code ändern kann. Bitte beraten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie diese bitte: